Maison > développement back-end > Tutoriel Python > Comment aplatir un index de colonne hiérarchique dans Pandas ?

Comment aplatir un index de colonne hiérarchique dans Pandas ?

Mary-Kate Olsen
Libérer: 2024-12-07 17:44:13
original
704 Les gens l'ont consulté

How to Flatten a Hierarchical Column Index in Pandas?

Aplatissement des colonnes d'un index hiérarchique

Pour aplatir un index hiérarchique dans les colonnes d'un Pandas DataFrame, suivez ces étapes :

1. Définir les colonnes au niveau supérieur :

df.columns = df.columns.get_level_values(0)
Copier après la connexion

Cela définira le niveau supérieur de l'index hiérarchique comme nouveaux noms de colonnes.

2. Rejoindre le MultiIndex dans un index unique (facultatif) :

Si vous souhaitez combiner davantage le MultiIndex en un seul index, vous pouvez procéder comme suit :

df.columns = [' '.join(col).strip() for col in df.columns.values]
Copier après la connexion

Cela rejoindra le noms de colonnes utilisant l'espace comme séparateur, supprimant tout début ou fin espaces.

Exemple :

Considérez le DataFrame suivant avec un index hiérarchique en colonnes :

df = pd.DataFrame({'s_PC': [1, 0, 1], 's_CL': [0, 0, 10]},
                    index = pd.MultiIndex.from_tuples([
                        ('day', 1),('day', 2),('day', 3)
                    ]), columns = pd.MultiIndex.from_tuples([
                        ('USAF', ''),('WBAN', ''),('year', 1993)
                    ]))
Copier après la connexion

Application de l'aplatissement opération :

# Set columns to top level
df.columns = df.columns.get_level_values(0)

# Join MultiIndex into single index
df.columns = [' '.join(col).strip() for col in df.columns.values]
Copier après la connexion

Sortie :

   USAF  WBAN  year  day  s_PC  s_CL
0   702   265  1993   1     1     0
1   702   265  1993   2     0     0
2   702   265  1993   3     1    10
Copier après la connexion

L'index hiérarchique a été aplati en un seul index.

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