Définir un MultiIndex sur un DataFrame avec set_index()
La méthode set_index() permet de définir un MultiIndex sur un DataFrame en spécifiant plusieurs colonnes comme index. Cela permet de structurer les données sur plusieurs niveaux d’indexation, ce qui est utile pour effectuer des opérations complexes comme le regroupement, le tri ou l’accès hiérarchisé aux données.
Fonctions :
-
df.set_index()
La fonction set_index() de pandas permet de définir un ou plusieurs colonnes comme index d'un DataFrame. Lorsqu'on utilise plusieurs colonnes, elle crée un MultiIndex, ce qui signifie que le DataFrame sera indexé par plusieurs niveaux. Cela est particulièrement utile lorsque vous souhaitez effectuer des opérations de regroupement, de sélection ou de manipulation en utilisant des combinaisons de plusieurs colonnes. L'index peut être modifié directement dans le DataFrame en définissant l'option inplace=True, ou peut être retourné comme un nouveau DataFrame si cette option est omise (par défaut, inplace=False).
Importation :
import pandas as pd
Attributs :
Paramètre Type Description Valeur par défaut keys
list, set Liste ou ensemble de colonnes à utiliser comme index. None
inplace
bool Si True
, modifie directement le DataFrame sans retourner de copie. Par défaut,False
.False
drop
bool Si True
, les colonnes utilisées pour l'index seront supprimées du DataFrame. Par défaut,True
.True
append
bool Si True
, ajoute les colonnes spécifiées à l'index existant au lieu de le remplacer. Par défaut,False
.False
Exemple de code :
import pandas as pd # Création d'un DataFrame exemple df = pd.DataFrame({ 'col1': ['A', 'A', 'B', 'B'], 'col2': [1, 2, 1, 2], 'valeur': [10, 20, 30, 40] }) # Définir un MultiIndex avec les colonnes 'col1' et 'col2' df_multiindex = df.set_index(['col1', 'col2']) # Affichage du DataFrame avec MultiIndex print(df_multiindex)
Explication du code :
import pandas as pd
importe la bibliothèque pandas, renommée ici enpd
pour simplifier son utilisation dans le code.Création d'un DataFrame exemple
Le code crée un DataFrame nommé
df
avec trois colonnes :'col1'
,'col2'
, et'valeur'
. Les données de chaque colonne sont spécifiées comme des listes dans le dictionnaire passé àpd.DataFrame()
.Définir un MultiIndex avec les colonnes 'col1' et 'col2'
La méthode
set_index(['col1', 'col2'])
permet de définir un MultiIndex en utilisant les colonnes'col1'
et'col2'
comme index du DataFrame. Le DataFrame résultant,df_multiindex
, a un index composé de ces deux colonnes.Affichage du DataFrame avec MultiIndex
La fonction
print()
affiche le DataFramedf_multiindex
avec le MultiIndex appliqué, ce qui permet de visualiser les données avec les nouveaux indices multi-niveaux.