Maison > développement back-end > Tutoriel Python > Comment convertir une série Pandas GroupBy MultiIndex en DataFrame ?

Comment convertir une série Pandas GroupBy MultiIndex en DataFrame ?

Mary-Kate Olsen
Libérer: 2024-12-09 06:23:05
original
487 Les gens l'ont consulté

How to Convert a Pandas GroupBy MultiIndex Series to a DataFrame?

Conversion de la sortie multiindex Pandas GroupBy d'une série en DataFrame

Lors du regroupement d'un DataFrame par plusieurs colonnes à l'aide de GroupBy, le résultat est souvent une série MultiIndex. Cependant, dans certains scénarios, vous pouvez avoir besoin de récupérer les données au format DataFrame. Cet article montre comment reconvertir une sortie MultiIndex Series de GroupBy en DataFrame.

Considérez l'exemple de DataFrame suivant :

     City     Name
0   Seattle    Alice
1   Seattle      Bob
2  Portland  Mallory
3   Seattle  Mallory
4   Seattle      Bob
5  Portland  Mallory
Copier après la connexion

En utilisant GroupBy avec plusieurs colonnes, nous pouvons compter les occurrences :

g1 = df1.groupby(["Name", "City"]).count()
Copier après la connexion

Cependant, la sortie de g1 est un MultiIndex Série :

                  City  Name
Name    City
Alice   Seattle      1     1
Bob     Seattle      2     2
Mallory Portland     2     2
        Seattle      1     1
Copier après la connexion

Pour reconvertir cela en DataFrame, vous pouvez tirer parti de deux approches :

Méthode 1 : ajout d'un suffixe et réinitialisation de l'index

Ajoutez un suffixe aux noms de colonnes et réinitialisez l'index :

g1.add_suffix('_Count').reset_index()
Copier après la connexion

Cela créera un DataFrame avec trois colonnes : Nom, Ville et deux colonnes supplémentaires suffixées par _Count pour indiquer les décomptes.

Méthode 2 : Utilisation du constructeur DataFrame

Vous pouvez également utiliser le DataFrame constructeur avec la méthode .size() pour compter les occurrences et réinitialiser l'index :

DataFrame({'count' : df1.groupby( [ "Name", "City"] ).size()}).reset_index()
Copier après la connexion

Ceci Cette approche créera un DataFrame avec deux colonnes : Nom, Ville et un nombre de colonnes supplémentaire représentant les décomptes.

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