Basmodell baserad på datum
Vi har redan byggt 3 olika basmodeller. Låt oss bygga ytterligare ett par för att öva mer. Den första modellen bygger på grupperingsvariabler. Det är tydligt att resans pris kan bero på tidpunkten på dygnet – till exempel kan priserna vara högre under rusningstid.
Ditt mål är att bygga en basmodell som tilldelar det genomsnittliga "fare_amount" för motsvarande timme. Just nu skapar du modellen utifrån hela train-datan och gör prediktioner för datamängden test.
DataFrame-objekten train och test finns tillgängliga i din arbetsyta. Dessutom har kolumnen "pickup_datetime" i båda DataFrame-objekten redan konverterats till ett datetime-objekt åt dig.
Den här övningen är en del av kursen
Vinna en Kaggle-tävling i Python
Övningsinstruktioner
- Hämta timmen från kolumnen "pickup_datetime" för DataFrame-objekten
trainochtest. - Beräkna det genomsnittliga "fare_amount" för varje timme i träningsdatan.
- Gör prediktioner för
testmed hjälp avpandasmap()-metoden och den gruppering du fick fram. - Skriv prediktorerna till filen.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Get pickup hour from the pickup_datetime column
train['hour'] = train['pickup_datetime'].dt.____
test['hour'] = test['pickup_datetime'].dt.____
# Calculate average fare_amount grouped by pickup hour
hour_groups = train.____('____')['____'].mean()
# Make predictions on the test set
test['fare_amount'] = test.hour.map(____)
# Write predictions
test[['id','fare_amount']].____('hour_mean_sub.csv', index=False)