Manipulation des niveaux d’un MultiIndex

La manipulation des niveaux d’un MultiIndex permet de gérer plusieurs niveaux d’index dans un DataFrame. Cela inclut des opérations comme le tri des niveaux, l’échange de niveaux, l’ajout ou la suppression de niveaux, et l’accès ou la modification des valeurs dans un niveau spécifique. Ces manipulations sont particulièrement utiles lorsqu’on travaille avec des données hiérarchiques ou des séries temporelles complexes, offrant ainsi plus de flexibilité dans l’organisation des données.

Fonctions :

  • df.index.get_level_values(0)

    La méthode get_level_values() permet d'extraire les valeurs d'un niveau spécifique d'un MultiIndex. Un MultiIndex est un index composé de plusieurs niveaux, et cette fonction est utile pour manipuler et accéder aux données d'un niveau particulier de l'index. En utilisant df.index.get_level_values(0), vous pouvez extraire toutes les valeurs du premier niveau de l'index. Cela permet de récupérer rapidement des informations spécifiques à un niveau particulier, ce qui est utile lorsque vous travaillez avec des données hiérarchiques ou multidimensionnelles.

    Importation :

    import pandas as pd

    Attributs :

    Paramètre Type Description Valeur par défaut
    level int, str L'indice ou le nom du niveau pour lequel vous souhaitez extraire les valeurs. Vous pouvez spécifier un numéro d'indice (0, 1, etc.) ou un nom de niveau si votre MultiIndex est nommé. None

    Exemple de code :

    import pandas as pd
    
    # Création d'un DataFrame avec un MultiIndex
    index = pd.MultiIndex.from_tuples([('A', 1), ('A', 2), ('B', 1), ('B', 2)], names=['lettre', 'num'])
    df = pd.DataFrame({
        'valeur': [10, 20, 30, 40]
    }, index=index)
    
    # Extraction des valeurs du niveau 0 (lettre)
    resultat = df.index.get_level_values(0)
    
    # Afficher le résultat
    print(resultat)
    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 avec un MultiIndex

    Le code crée un DataFrame nommé df avec une colonne 'valeur' contenant les données [10, 20, 30, 40]. L'index du DataFrame est un MultiIndex, créé à partir de tuples via pd.MultiIndex.from_tuples(). Ces tuples sont définis comme [('A', 1), ('A', 2), ('B', 1), ('B', 2)] et les noms des niveaux de l'index sont spécifiés par names=['lettre', 'num'].

    Extraction des valeurs du niveau 0 (lettre)

    La méthode get_level_values(0) permet d'extraire les valeurs du premier niveau de l'index, ici le niveau 'lettre', et retourne une série contenant ces valeurs.

    resultat = df.index.get_level_values(0) extrait les valeurs du premier niveau de l'index et assigne le résultat à la variable resultat.

    Afficher le résultat

    La fonction print() affiche le contenu de resultat, montrant les valeurs extraites du premier niveau de l'index (ici, les lettres 'A' et 'B').