CommencezCommencez gratuitement

Pivot paresseux vers un format large

L'équipe du tableau de bord souhaite une vue large des prêts par mois et par format. Polars prend en charge .pivot() en mode lazy lorsque vous précisez à l'avance les noms des colonnes de sortie, ce qui permet d'optimiser l'ensemble du pipeline de bout en bout.

Le LazyFrame monthly_checkouts contient les totaux en format long avec les colonnes month, format et total, et la liste formats contient tous les noms de formats présents dans les données.

Cette activité fait partie du cours

Mise à l'échelle et optimisation des pipelines de données avec Polars

Voir le cours

Instructions de l’exercice

  • Effectuez un pivot de monthly_checkouts pour que chaque format devienne sa propre colonne.
  • Passez la liste formats afin que le pivot lazy connaisse d'avance le schéma de sortie.
  • Triez le DataFrame obtenu par month.

Exercice interactif pratique

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

result = (
    monthly_checkouts
    # Pivot the format column into separate columns
    .pivot(
        on="____",
        index="month",
        values="total",
        # Pre-declare the output column names so the pivot stays lazy
        on_columns=____,
    )
    .collect()
    # Sort the wide result by month
    .sort("____")
)
print(result)
Modifier et exécuter le code