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)
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]
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) ]))
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]
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
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!