Maison > Article > développement back-end > Comment calculer le « temps » moyen par « organisation » par « cluster », puis le « temps » moyen pour chaque groupe de « cluster » dans Pandas ?
Groupby Groupby et moyenne dans Pandas
Problème :
Étant donné un DataFrame avec 'cluster ", " org " et " time ", comment pouvez-vous calculer le " temps " moyen par " organisation " et par " cluster ", puis prendre la moyenne du " temps " pour chaque groupe de " cluster " ?
Attente :
cluster | mean(time) |
---|---|
1 | 15 |
2 | 54 |
3 | 6 |
Solution :
Pour obtenir le résultat souhaité, vous pouvez utiliser les étapes suivantes :
Groupby ['cluster', 'org'] et Take Mean :
mean_by_cluster_org = df.groupby(['cluster', 'org'], as_index=False).mean()
Groupby ['cluster' ] et Calculer la moyenne :
cluster_average = mean_by_cluster_org.groupby('cluster')['time'].mean()
Afficher les résultats :
print(cluster_average)
Alternativement, vous peut également utiliser les méthodes suivantes pour résoudre ce problème :
Option 1 : Groupby uniquement ['cluster'] et Take Mean :
cluster_only_average = df.groupby('cluster').mean()
Option 2 : Groupby ['cluster', 'org'] et Use Mean :
cluster_org_mean = df.groupby(['cluster', 'org']).mean()
Quelle que soit l'approche que vous choisissez, le résultat vous fournira le « temps » moyen par « organisation » pour chaque groupe « cluster » et la moyenne globale du « temps » par « cluster ».
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!