Maison > développement back-end > Tutoriel Python > Comment effectuer plusieurs agrégations sur une seule colonne à l'aide de Pandas GroupBy.agg() ?

Comment effectuer plusieurs agrégations sur une seule colonne à l'aide de Pandas GroupBy.agg() ?

Linda Hamilton
Libérer: 2024-12-10 17:31:10
original
606 Les gens l'ont consulté

How to Perform Multiple Aggregations on a Single Column Using Pandas GroupBy.agg()?

Agrégations multiples sur la même colonne à l'aide de Pandas GroupBy.agg()

Lorsque vous travaillez avec Pandas, il est souvent nécessaire d'effectuer plusieurs agrégations sur la même colonne. Bien qu'intuitive, l'approche simple consistant à spécifier la même colonne plusieurs fois dans la méthode agg() n'est pas syntaxiquement correcte. Cela soulève la question de savoir comment appliquer de manière efficace et concise différentes fonctions d'agrégation à une seule colonne à l'aide de GroupBy.agg().

Solution

À partir du 2022-06- 20, la pratique recommandée pour les agrégations multiples consiste à utiliser une syntaxe de dictionnaire :

df.groupby('dummy').agg({
    'returns': {'Mean': np.mean, 'Sum': np.sum}
})
Copier après la connexion

Dans ce Par exemple, la colonne « retours » est agrégée avec les fonctions de moyenne et de somme. Le DataFrame résultant contiendra deux nouvelles colonnes, « Mean » et « Sum », qui montrent les agrégations respectives.

Note historique

Avant l'adoption du dictionnaire syntaxe, il existait deux méthodes alternatives pour les agrégations multiples :

  1. Passing Fonctions sous forme de liste :
df.groupby('dummy').agg({'returns': [np.mean, np.sum]})
Copier après la connexion

Cette approche transmet les fonctions sous forme de liste directement à agg(). Le DataFrame contiendra deux nouvelles colonnes avec les résultats des agrégations de moyenne et de somme, respectivement.

  1. Passer des fonctions en tant que dictionnaire imbriqué :
df.groupby('dummy').agg({'returns': {'f1': np.mean, 'f2': np.sum}})
Copier après la connexion

Semblable à l'approche par liste, les fonctions sont transmises sous forme de dictionnaire dans un dictionnaire. Les clés du dictionnaire interne spécifient les noms des fonctions, tandis que les valeurs sont les fonctions d'agrégation. Le DataFrame aura une colonne pour chaque nom de fonction spécifié.

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