Baseline op basis van de datum
We hebben al 3 verschillende baseline-modellen gebouwd. Om extra te oefenen, bouwen we er nog een paar. Het eerste model is gebaseerd op de groepeer-variabelen. Het is duidelijk dat de ritprijs kan afhangen van het moment van de dag. Bijvoorbeeld, prijzen kunnen hoger zijn tijdens de spitsuren.
Jouw doel is om een baseline-model te bouwen dat het gemiddelde van "fare_amount" toewijst voor het bijbehorende uur. Voor nu maak je het model voor alle train-data en doe je voorspellingen voor de test-gegevensset.
De train- en test-DataFrames zijn beschikbaar in je werkruimte. Bovendien is de kolom "pickup_datetime" in beide DataFrames al voor je omgezet naar een datetime-object.
Deze oefening maakt deel uit van de cursus
Een Kaggle-competitie winnen met Python
Oefeninstructies
- Haal het uur op uit de kolom "pickup_datetime" voor de
train- entest-DataFrames. - Bereken de gemiddelde "fare_amount" per uur op de train-data.
- Maak
test-voorspellingen met demap()-methode vanpandasen de verkregen groepering. - Schrijf de voorspellingen weg naar een bestand.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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)