Appliquer une fonction d’agrégation sur un groupe
Après avoir regroupé les données selon une ou plusieurs colonnes, il est souvent nécessaire de résumer ou synthétiser les informations contenues dans chaque groupe. Pour cela, on utilise des fonctions d’agrégation, qui permettent de calculer des mesures statistiques comme la somme, la moyenne, le maximum, le minimum ou le nombre d’éléments. Cette étape est essentielle pour extraire des insights pertinents, réduire la complexité des données et faciliter la prise de décision.
Fonctions :
-
groupby('colonne').agg('fonction')
La méthode agg() permet d'appliquer une ou plusieurs fonctions d'agrégation sur les groupes créés par groupby(). Elle est extrêmement flexible et permet d'appliquer des fonctions comme la moyenne (mean), la somme (sum), le minimum (min), le maximum (max), etc., sur les groupes de données. Vous pouvez également appliquer plusieurs fonctions d'agrégation simultanément.
Importation :
import pandas as pd
Attributs :
Paramètre Description agg()
Applique une ou plusieurs fonctions d'agrégation aux groupes. func
La ou les fonctions à appliquer, telles que 'mean'
,'sum'
,'min'
,'max'
, ou une fonction personnalisée.Exemple de code :
import pandas as pd # Exemple de DataFrame data = { 'nom': ['Alice', 'Bob', 'Charlie', 'David', 'Eve'], 'ville': ['Paris', 'Lyon', 'Paris', 'Lyon', 'Paris'], 'âge': [24, 30, 35, 30, 24], 'score': [88, 92, 75, 85, 95] } df = pd.DataFrame(data) # Appliquer une fonction d'agrégation pour calculer la moyenne et la somme par ville agg_result = df.groupby('ville').agg({'âge': 'mean', 'score': 'sum'}) print("Moyenne de 'âge' et somme de 'score' par ville :") print(agg_result)
Explication du code :
import pandas as pd
importe la bibliothèque pandas, renommée ici enpd
pour simplifier son utilisation dans le code.Exemple de DataFrame
Le dictionnaire
data
contient quatre clés :'nom'
,'ville'
,'âge'
, et'score'
, chacune associée à une liste de valeurs. Ce dictionnaire est utilisé pour créer un DataFramedf
.Appliquer une fonction d'agrégation pour calculer la moyenne et la somme par ville
La méthode
groupby('ville')
permet de regrouper les lignes du DataFrame en fonction de la colonne'ville'
. Ensuite, la méthodeagg()
est utilisée pour appliquer différentes fonctions d'agrégation sur les colonnes sélectionnées.Dans cet exemple,
agg({'âge': 'mean', 'score': 'sum'})
calcule la moyenne des âges ('âge': 'mean'
) et la somme des scores ('score': 'sum'
) pour chaque groupe de ville. Le résultat est assigné à la variableagg_result
.Enfin,
print(agg_result)
affiche les résultats de l'agrégation, montrant la moyenne de l'âge et la somme du score pour chaque ville.