CommencerCommencez gratuitement

Regrouper par plusieurs colonnes avec des fonctions de fenêtre

Pour aller plus loin dans l’analyse, vous souhaitez ventiler la demande de vélos à la fois par moment de la journée et par météo. Les heures chaudes et ensoleillées se comportent sans doute différemment des heures fraîches et nuageuses. Créez une catégorie météo simple, puis calculez le total des locations pour chaque combinaison heure–météo.

polars est chargé sous le nom pl. Le DataFrame bikes est disponible avec les colonnes time, rentals, temp et hour.

Cet exercice fait partie du cours

<cours>Transformation de données avec Polars</cours>
Voir le cours

Instructions de l’exercice

  • Créez une colonne weather : "warm" lorsque temp dépasse 20, sinon "cool".
  • Ajoutez total_by_hour_weather avec la somme de rentals regroupée par hour et weather.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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")
)
Modifier et exécuter le code