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)
    Résultat du code

    Explication du code :

    import pandas as pd importe la bibliothèque pandas, renommée ici en pd 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 DataFrame df_multiindex avec le MultiIndex appliqué, ce qui permet de visualiser les données avec les nouveaux indices multi-niveaux.