Dans Pandas, vous pouvez effectuer un regroupement et une agrégation à plusieurs niveaux pour calculer des statistiques complexes. Une tâche courante consiste à calculer la moyenne d'une colonne au sein de groupes définis par plusieurs autres colonnes.
Considérez le DataFrame suivant :
cluster org time 1 a 8 1 a 6 2 h 34 1 c 23 2 d 74 3 w 6
Pour calculer la moyenne du temps par organisation au sein de chaque cluster , vous pouvez regrouper le DataFrame par cluster et par organisation :
df.groupby(['cluster', 'org'], as_index=False).mean()
Cela produira un DataFrame regroupé par cluster et par organisation, avec la moyenne de temps calculée pour chaque groupe :
cluster org time 0 1 a 12.333333 1 1 c 23.0 2 2 h 34.0 3 2 d 74.0 4 3 w 6.0
Si vous souhaitez uniquement la moyenne du temps au sein de chaque cluster, vous pouvez regrouper uniquement par cluster :
df.groupby('cluster').mean()
Cela produira un DataFrame avec la moyenne du temps calculée pour chaque cluster :
cluster time 0 1 12.333333 1 2 54.0 2 3 6.0
Vous pouvez également utiliser la méthode groupby sur la combinaison multi-colonnes ['cluster', 'org'] puis calculer la moyenne de temps :
df.groupby(['cluster', 'org']).mean()['time']
Cela produira une série avec le temps moyen calculé pour chaque combinaison de cluster et d'organisation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!