Création d'un MultiIndex avec pd.MultiIndex.from_tuples() (
La création d’un MultiIndex avec pd.MultiIndex.from_tuples() permet de définir un index hiérarchique pour un DataFrame ou une Series à partir d’une liste de tuples. Chaque tuple représente un ensemble de valeurs pour chaque niveau de l’index, permettant de structurer les données de manière plus complexe et de faciliter des opérations telles que le regroupement ou la manipulation sur plusieurs niveaux d’indexation.
Fonctions :
-
pd.MultiIndex.from_tuples()
La fonction pd.MultiIndex.from_tuples() permet de créer un objet MultiIndex à partir d'une liste de tuples. Un MultiIndex est une structure de données qui permet de gérer des index hiérarchiques, c'est-à-dire des index à plusieurs niveaux. Cela est utile lorsqu'on travaille avec des données multidimensionnelles et qu'on souhaite indexer les données selon plusieurs critères. Dans ce cas, chaque tuple représente une combinaison de niveaux d'index et l'argument names permet de donner un nom à chaque niveau de l'index. Cela rend l'index plus explicite et facilite la manipulation des données par la suite.
Importation :
import pandas as pd
Attributs :
Paramètre Description tuples
Liste de tuples représentant les différentes combinaisons d'index. Chaque tuple correspond à un ensemble de valeurs pour les niveaux de l'index. names
Liste de chaînes de caractères représentant les noms des différents niveaux d'index. Cela est optionnel, mais il est recommandé pour rendre l'index plus lisible. Exemple de code :
import pandas as pd # Création d'un MultiIndex à partir de tuples multi_index = pd.MultiIndex.from_tuples([('A', 1), ('A', 2), ('B', 1)], names=['lettre', 'num']) # Création d'un DataFrame avec ce MultiIndex df = pd.DataFrame({'valeur': [10, 20, 30]}, index=multi_index) # Affichage du DataFrame print(df)
Explication du code :
🔹 Explication du code
pd.MultiIndex.from_tuples([('A', 1), ('A', 2), ('B', 1)], names=['lettre', 'num'])
:- Cette ligne crée un
MultiIndex
à partir de trois tuples :('A', 1)
,('A', 2)
, et('B', 1)
. - Les niveaux de l'index sont spécifiés par la liste
names=['lettre', 'num']
. Cela indique que le premier niveau de l'index sera nommé "lettre" et le second niveau sera nommé "num".
- Cette ligne crée un
- Résultat :
Cela permet de créer un index hiérarchique, où chaque niveau est clairement nommé et permet de manipuler les données à différents niveaux.
🔹 Remarques pratiques
-
Utilité des
MultiIndex
:
LeMultiIndex
est très utile pour travailler avec des données complexes, comme des séries temporelles à plusieurs niveaux, des données financières ou des bases de données avec des informations hiérarchiques (ex : catégories et sous-catégories). -
Accès aux données :
Avec unMultiIndex
, vous pouvez facilement accéder aux données selon un ou plusieurs niveaux. -
Niveaux multiples :
Les index multiples permettent d'éviter les doublons et d'ajouter de la clarté dans les données, en permettant de structurer les informations de manière plus logique. -
Manipulation :
Vous pouvez manipuler unMultiIndex
de manière similaire à un index simple, mais vous avez la possibilité de gérer des niveaux supplémentaires, ce qui rend les manipulations plus flexibles et puissantes. Par exemple, pour accéder uniquement au niveau "lettre", vous pouvez utiliserdf.index.get_level_values('lettre')
.