Comment calculer des valeurs moyennes avec plusieurs regroupements dans Pandas ?

Mary-Kate Olsen
Libérer: 2024-11-20 01:45:01
original
287 Les gens l'ont consulté

How to Calculate Average Values with Multiple Groupings in Pandas?

Agrégation groupe par avec plusieurs regroupements et moyenne

Dans Pandas, effectuer des agrégations sur des données regroupées par plusieurs niveaux est une opération courante. 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 
Copier après la connexion

Une tâche courante consiste à calculer la moyenne d'une colonne donnée, telle que « temps », par groupe défini par plusieurs variables, telles que « cluster » et « org ».

Solution 1 : Moyenne sur les regroupements de clusters uniquement

Pour calculer la moyenne du "temps" regroupé par "cluster" uniquement, vous pouvez utiliser le code suivant :

df.groupby(['cluster']).mean()
Copier après la connexion

Résultat :

              time
cluster
1        12.333333
2        54.000000
3         6.000000
Copier après la connexion

Solution 2 : Moyenne sur une combinaison de regroupements

Si vous souhaitez calculer la moyenne du « temps » pour chaque combinaison de « cluster » et « org », vous pouvez utiliser :

df.groupby(['cluster', 'org']).mean()
Copier après la connexion

Résultat :

               time
cluster org
1       a    438886
        c        23
2       d      9874
        h        34
3       w         6
Copier après la connexion

Solution 3 : Moyenne imbriquée sur les groupements

Pour effectuer une moyenne imbriquée, en faisant d'abord la moyenne sur la combinaison "cluster" et "org", puis en faisant la moyenne sur les groupes "cluster", utilisez :

(df.groupby(['cluster', 'org'], as_index=False).mean()
            .groupby('cluster')['time'].mean())
Copier après la connexion

Résultat :

cluster  mean(time)
1          15 #=((8 + 6) / 2 + 23) / 2
2          54 #=(74 + 34) / 2
3           6
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal