Formation 90 min de lecture Manipulation de donnΓ©es avec Pandas

πŸ“¦ Groupby et agrΓ©gation avec Pandas

Python & Data Science Chapitre : Manipulation de donnΓ©es avec Pandas Sous-chapitre : Groupby et agrΓ©gation

Objectifs d'apprentissage

🎯 Objectifs :\n
1Utiliser groupby\n2. Appliquer des agrΓ©gations\n3. Utiliser agg()\n4. Comprendre transform()

Introduction

πŸ“– Groupby permet d'analyser des donnΓ©es par catΓ©gorie.

Contenu thΓ©orique

Groupby :\n
PYTHON
\n# Groupement simple\ndf.groupby("categorie").mean()\n\n# Plusieurs colonnes\ndf.groupby(["categorie", "sous_categorie"]).agg({\n    "ventes": "sum",\n    "quantite": "mean"\n})\n\n# AgrΓ©gations multiples\ndf.groupby("categorie").agg(["mean", "sum", "count"])\n\n# Transform\ndf["moyenne_groupe"] = df.groupby("categorie")["valeur"].transform("mean")\n

Exemples pratiques

πŸ’» Exemple : Analyse des ventes par rΓ©gion\n
PYTHON
\nimport pandas as pd\n\nventes = pd.DataFrame({\n    "region": ["Nord", "Sud", "Nord", "Est", "Sud", "Nord"],\n    "produit": ["A", "B", "C", "A", "B", "C"],\n    "ventes": [100, 200, 150, 300, 250, 180],\n    "quantite": [10, 20, 15, 30, 25, 18]\n})\n\n# Ventes totales par rΓ©gion\ntotal_par_region = ventes.groupby("region")["ventes"].sum()\nprint("Ventes totales par rΓ©gion :")\nprint(total_par_region)\n\n# Statistiques par produit\nstats_produit = ventes.groupby("produit").agg({\n    "ventes": ["mean", "sum"],\n    "quantite": ["sum", "count"]\n})\nprint("\\nStatistiques par produit :")\nprint(stats_produit)\n\n# Moyenne par rΓ©gion\nventes["moyenne_region"] = ventes.groupby("region")["ventes"].transform("mean")\nprint("\\nAvec moyenne par rΓ©gion :")\nprint(ventes)\n

Bonnes pratiques

1Utiliser agg() pour multiples agrΓ©gations\nβœ… 2. Utiliser transform() pour ajouter des colonnes\nβœ… 3. reset_index() pour retrouver un DataFrame normal\nβœ… 4. Utiliser as_index=False dans groupby

Pièges à éviter

Oublier que groupby retourne un objet GroupBy\n
Appliquer une agrégation après groupby

RΓ©sumΓ©

groupby() : regroupement\nβœ… agg() : multiples agrΓ©gations\nβœ… transform() : ajout de colonnes\nβœ… reset_index() : DataFrame normal

Ressources supplΓ©mentaires

πŸ“š pandas.pydata.org/docs/user_guide/groupby.html