Maison > développement back-end > Tutoriel Python > Comment calculer des statistiques par groupe dans Pandas à l'aide de GroupBy ?

Comment calculer des statistiques par groupe dans Pandas à l'aide de GroupBy ?

Patricia Arquette
Libérer: 2024-12-19 21:26:11
original
1018 Les gens l'ont consulté

How to Calculate Group-Wise Statistics in Pandas Using GroupBy?

Comment obtenir des statistiques par groupe pour une trame de données à l'aide de Pandas GroupBy

Lorsque vous travaillez avec des données, il est souvent utile de pouvoir résumer et analyser les données en fonction de critères spécifiques. critères de regroupement. Pandas, une puissante bibliothèque Python pour la manipulation et l'analyse des données, fournit un moyen pratique de le faire grâce à sa fonctionnalité GroupBy.

Réponse rapide

Pour obtenir le nombre de lignes dans chaque groupe, utilisez le .size (), qui renvoie une méthode Series :

df.groupby(['col1','col2']).size()
Copier après la connexion

Pour convertir ceci en un formulaire DataFrame, employer :

df.groupby(['col1', 'col2']).size().reset_index(name='counts')
Copier après la connexion
Copier après la connexion

Alternativement, pour calculer le nombre de lignes et d'autres statistiques pour chaque groupe, l'approche suivante peut être utilisée :

df.groupby(['col1', 'col2'])[['col3', 'col4']].agg({
    'col3': ['mean', 'count'], 
    'col4': ['median', 'min', 'count']
})
Copier après la connexion

Exemple détaillé

Supposons que nous avoir une trame de données nommée df avec les colonnes col1 à col4. Pour illustrer, calculons le nombre de lignes par groupe :

df.groupby(['col1', 'col2']).size()
Copier après la connexion

La sortie affichera le nombre de lignes dans chaque combinaison unique de valeurs col1 et col2.

Pour ajouter ces comptes sous forme de colonne à notre DataFrame, nous pouvons utiliser la méthode .reset_index(name='counts') :

df.groupby(['col1', 'col2']).size().reset_index(name='counts')
Copier après la connexion
Copier après la connexion

Inclure les résultats pour des statistiques supplémentaires

Si nous voulons calculer plusieurs statistiques sur les données groupées, nous pouvons utiliser la méthode agg(). Par exemple, pour calculer la moyenne et le nombre pour col3 et la médiane, le minimum et le nombre pour col4, nous utiliserions :

df.groupby(['col1', 'col2']).agg({
    'col3': ['mean', 'count'], 
    'col4': ['median', 'min', 'count']
})
Copier après la connexion

Cela renverra un DataFrame avec les statistiques demandées pour chaque combinaison unique de col1 et les valeurs col2.

Conclusion

Pandas GroupBy est un outil puissant pour analyser les données en fonction de critères spécifiques. En utilisant les méthodes et agrégations appropriées, vous pouvez obtenir efficacement des statistiques par groupe pour obtenir des informations et mieux comprendre vos données.

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