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 ?

Comment calculer le « temps » moyen par « organisation » par « cluster », puis le « temps » moyen pour chaque groupe de « cluster » dans Pandas ?

DDD
DDDoriginal
2024-11-16 22:54:03531parcourir

How to Calculate the Average 'Time' per 'Org' per 'Cluster' and Then the Average 'Time' for Each 'Cluster' Group in 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 :

  1. Groupby ['cluster', 'org'] et Take Mean :

    mean_by_cluster_org = df.groupby(['cluster', 'org'], as_index=False).mean()
  2. Groupby ['cluster' ] et Calculer la moyenne :

    cluster_average = mean_by_cluster_org.groupby('cluster')['time'].mean()
  3. 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!

Déclaration:
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