Groeperen op meerdere kolommen met windowfuncties
Om de analyse verder te brengen, wil je de vraag naar fietsen uitsplitsen naar zowel tijdstip van de dag als het weer. Warme zonnige uren gedragen zich waarschijnlijk anders dan koele, bewolkte uren. Maak een eenvoudige weer-categorie en bereken vervolgens het totaal aantal verhuringen voor elke uur-weercombinatie.
polars is geladen als pl. De DataFrame bikes is beschikbaar met de kolommen time, rentals, temp en hour.
Deze oefening maakt deel uit van de cursus
Data transformatie met Polars
Oefeninstructies
- Maak een kolom
weather:"warm"wanneertemphoger is dan 20, anders"cool". - Voeg
total_by_hour_weathertoe met de som vanrentals, gegroepeerd perhourenweather.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# Add weather category based on temperature
bikes.with_columns(
pl.when(pl.col("temp") > 20)
.then(pl.lit("____"))
.otherwise(pl.lit("____"))
.alias("weather")
).with_columns(
# Calculate total rentals by hour and weather
pl.col("rentals").____().over("____", "____").alias("total_by_hour_weather")
)