Indexer un DataFrame par une colonne de dates
Indexer un DataFrame par une colonne de dates signifie définir une colonne contenant des dates comme index pour faciliter l’accès et les opérations basées sur le temps, comme la sélection par période ou le resampling.
Fonctions :
-
df.set_index('date', inplace=True)
La fonction set_index() de Pandas permet de définir une ou plusieurs colonnes d'un DataFrame comme index. Dans ce cas, en spécifiant la colonne 'date', nous transformons cette colonne en l'index du DataFrame. Cela est particulièrement utile pour travailler avec des séries temporelles, car cela permet de faciliter l'accès, le filtrage et les calculs basés sur les dates. En définissant l'index à une colonne de dates, vous pouvez utiliser des fonctionnalités avancées telles que le découpage temporel ou la resampling (rééchantillonnage).
Importation :
import pandas as pd
Attributs :
Paramètre Description keys
La ou les colonnes à définir comme index. Dans ce cas, il s'agit de la colonne 'date'
.inplace
Si True
, l'opération est effectuée directement sur le DataFrame sans renvoyer de nouvel objet. Par défaut, c'estFalse
, ce qui signifie que le DataFrame original n'est pas modifié et que l'opération renvoie une copie avec le nouvel index.drop
Si True
, la colonne utilisée comme index est supprimée du DataFrame. Par défaut, elle est conservée.append
Si True
, la nouvelle colonne devient un index supplémentaire, sans remplacer les index existants. Par défaut, c'estFalse
.Exemple de code :
import pandas as pd # Création d'un DataFrame exemple data = { 'date': ['2025-01-01', '2025-01-02', '2025-01-03'], 'ventes': [100, 150, 200] } df = pd.DataFrame(data) # Avant le changement d'index print("Avant :\n", df) # Indexation du DataFrame par la colonne 'date' df.set_index('date', inplace=True) # Après le changement d'index print("\nAprès :\n", df)
Explication du code :
La ligne
import pandas as pd
importe la bibliothèque pandas, renommée ici enpd
pour faciliter son utilisation dans le code.Création d'un DataFrame exemple
Un DataFrame nommé
df
est créé avec les colonnes suivantes :date
etventes
. La colonnedate
contient des dates sous forme de chaînes, et la colonneventes
contient des chiffres de vente associés.Avant le changement d'index
La ligne
print("Avant :\n", df)
affiche le DataFrame original avant tout changement d'index. À ce moment, l'index est par défaut un index numérique (0, 1, 2, etc.).Indexation du DataFrame par la colonne 'date'
La méthode
set_index('date')
permet de définir la colonnedate
comme nouvel index du DataFrame. Le paramètreinplace=True
modifie directement le DataFrame sans en créer une copie.Après cette opération, la colonne
date
devient l'index du DataFrame, ce qui facilite les opérations sur les données temporelles, comme la recherche ou le filtrage par date.Après le changement d'index
La ligne
print("\nAprès :\n", df)
affiche le DataFrame après avoir défini la colonnedate
comme index. Le DataFrame est désormais indexé par la colonnedate
, ce qui rend ce champ unique pour chaque ligne.