Dela via


Demodata för NYC Taxi för SQL Server Python- och R-självstudier

Gäller för: SQL Server 2016 (13.x) och senare versioner Azure SQL Managed Instance

Den här artikeln beskriver hur du konfigurerar en exempeldatabas som består av offentliga data från New York City Taxi and Limousine Commission. Dessa data används i flera R- och Python-handledningar för databaserad analys med SQL Server. För att göra exempelkoden snabbare skapade vi en representativ 1% sampling av data. I systemet är databassäkerhetskopieringsfilen drygt 90 MB, vilket ger 1,7 miljoner rader i den primära datatabellen.

För att slutföra den här övningen bör du ha SQL Server Management Studio (SSMS) eller ett annat verktyg som kan återställa en databassäkerhetskopia och köra T-SQL-frågor.

Självstudier och snabbstarter med hjälp av den här datauppsättningen innehåller följande artiklar:

Ladda ned filer

Exempeldatabasen är en SQL Server 2016-säkerhetskopieringsfil (.bak) som hanteras av Microsoft. Du kan återställa den på SQL Server 2016 och senare. Filhämtningen börjar omedelbart när du öppnar länken.

Filstorleken är cirka 90 MB.

Anmärkning

Om du vill återställa exempeldatabasen på SQL Server Big Data Clusters laddar du ned NYCTaxi_Sample.bak och följer anvisningarna i Återställ en databas till SQL Server-huvudinstansen för stordatakluster.

Anmärkning

Om du vill återställa exempeldatabasen på Machine Learning Services i Azure SQL Managed Instance följer du anvisningarna i Snabbstart: Återställa en databas till Azure SQL Managed Instance med hjälp av demodatabasen NYC Taxi .bak fil: https://aka.ms/sqlmldocument/NYCTaxi_Sample.bak.

  1. Ladda ned NYCTaxi_Sample.bak databassäkerhetskopieringsfilen.

  2. Kopiera filen till C:\Program files\Microsoft SQL Server\MSSQL-instance-name\MSSQL\Backup eller liknande sökväg, för standardmappen för din instans Backup.

  3. Högerklicka på Databaser i SSMS och välj Återställ filer och filgrupper.

  4. Ange NYCTaxi_Sample som databasnamn.

  5. Välj Från enhet och öppna sedan sidan för filval för att välja säkerhetskopieringsfilen NYCTaxi_Sample.bak . Välj Lägg till för att välja NYCTaxi_Sample.bak.

  6. Markera kryssrutan Återställ och välj OK för att återställa databasen.

Granska databasobjekt

Bekräfta att databasobjekten finns på SQL Server-instansen med SQL Server Management Studio. Du bör se databaser, tabeller, funktioner och lagrade procedurer.

rsql_devtut_BrowseTables

Objekt i NYCTaxi_Sample databas

I följande tabell sammanfattas de objekt som skapats i demodatabasen NYC Taxi.

Objektnamn Objekttyp Beskrivning
NYCTaxi_Sample database Skapar en databas och två tabeller:

dbo.nyctaxi_sample tabell: Innehåller den huvudsakliga NYC Taxi-datauppsättningen. Ett grupperat columnstore-index läggs till i tabellen för att förbättra lagrings- och frågeprestanda. Ett 1% urval av NYC Taxi-datamängden infogas i den här tabellen.

dbo.nyc_taxi_models tabell: Används för att bevara den tränade avancerade analysmodellen.
fnCalculateDistance skalärvärdefunktion Beräknar det direkta avståndet mellan upphämtnings- och avlämningsplatser. Den här funktionen används i Skapa datafunktioner, Träna och spara en modell och Operationalisera R-modellen.
fnEngineerFeatures tabellvärdesfunktion Skapar nya datafunktioner för modellträning. Den här funktionen används i Skapa datafunktioner och Operationalisera R-modellen.

Lagrade procedurer skapas med R och Python-skript som finns i olika handledningar. I följande tabell sammanfattas de lagrade procedurer som du kan lägga till i demodatabasen NYC Taxi när du kör skript från olika lektioner.

Lagrad procedur Språk Beskrivning
RxPlotHistogram R Anropar funktionen RevoScaleR rxHistogram för att rita histogrammet för en variabel och returnerar sedan diagrammet som ett binärt objekt. Den här lagrade proceduren används i Utforska och visualisera data.
RPlotRHist R Skapar en bild med hjälp av Hist funktionen och sparar utdata som en lokal PDF-fil. Den här lagrade proceduren används i Utforska och visualisera data.
RxTrainLogitModel R Tränar en logistisk regressionsmodell genom att anropa ett R-paket. Modellen förutsäger värdet för tipped kolumnen och tränas med hjälp av ett slumpmässigt valt 70% av data. Utdata från den lagrade proceduren är den tränade modellen, som sparas i tabellen dbo.nyc_taxi_models. Den här lagrade proceduren används i Träna och spara en modell.
RxPredictBatchOutput R Anropar den tränade modellen för att skapa förutsägelser med hjälp av modellen. Den lagrade proceduren accepterar en fråga som indataparameter och returnerar en kolumn med numeriska värden som innehåller poängen för indataraderna. Den här lagrade proceduren används i Förutsäga potentiella utfall.
RxPredictSingleRow R Anropar den tränade modellen för att skapa förutsägelser med hjälp av modellen. Den här lagrade proceduren accepterar en ny observation som indata, med enskilda funktionsvärden som skickas som infogade parametrar, och returnerar ett värde som förutsäger resultatet för den nya observationen. Den här lagrade proceduren används i Förutsäga potentiella utfall.

Fråga efter data

Som ett valideringssteg kör du en fråga för att bekräfta att data har laddats upp.

  1. Högerklicka på NYCTaxi_Sample-databasen under Databaser i Object Explorer och starta en ny fråga.

  2. Kör några grundläggande frågor:

    SELECT TOP(10) * FROM dbo.nyctaxi_sample;
    SELECT COUNT(*) FROM dbo.nyctaxi_sample;
    

Databasen innehåller 1,7 miljoner rader.

  1. I databasen finns en dbo.nyctaxi_sample tabell som innehåller datauppsättningen. Tabellen har optimerats för uppsättningsbaserade beräkningar med tillägg av ett columnstore-index. Kör den här instruktionen för att generera en snabbsammanfattning i tabellen.

    SELECT DISTINCT [passenger_count]
        , ROUND (SUM ([fare_amount]),0) as TotalFares
        , ROUND (AVG ([fare_amount]),0) as AvgFares
    FROM [dbo].[nyctaxi_sample]
    GROUP BY [passenger_count]
    ORDER BY  AvgFares DESC
    

Resultaten bör likna dem som visas i följande skärmbild.

Tabellsammanfattningsinformation

Nästa steg

NYC Taxi-exempeldata är nu tillgängliga för praktisk inlärning.