Décalage des valeurs avec shift()
Le décalage des valeurs avec shift() permet de décaler les données d’un DataFrame ou d’une série sur une ou plusieurs positions, ce qui est utile pour créer des variables temporelles (par exemple, les valeurs précédentes ou suivantes dans une série chronologique).
Fonctions :
-
shift()
La fonction shift() de Pandas permet de décaler les valeurs d'une colonne ou d'un DataFrame sur un certain nombre de lignes. Cela est souvent utilisé dans l'analyse des séries temporelles ou dans des contextes où vous devez comparer les valeurs d'une colonne à une valeur précédente ou suivante. Par défaut, shift(1) décale les valeurs d'une colonne d'une ligne vers le bas (ou vers le haut si un nombre négatif est utilisé). Cette fonction est utile pour calculer des différences entre les valeurs consécutives, créer des variables de décalage ou effectuer des calculs de type "rolling".
Importation :
import pandas as pdAttributs :
Paramètre Description periodsLe nombre de périodes (lignes) à décaler. Par défaut, c'est 1. Utilisez une valeur positive pour un décalage vers le bas, ou une valeur négative pour un décalage vers le haut.fill_valueValeur à utiliser pour remplir les valeurs manquantes générées par le décalage. Par défaut, c'est NaN.axisL'axe sur lequel appliquer le décalage. Par défaut, c'est l'axe des lignes ( axis=0).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) # Décalage des valeurs de la colonne 'ventes' d'une ligne vers le bas df['ventes_decalees'] = df['ventes'].shift(1) # Affichage du DataFrame après le décalage print(df)
Explication du code :
La ligne
import pandas as pdimporte la bibliothèque pandas, renommée ici enpdpour faciliter son utilisation dans le code.Création d'un DataFrame exemple
Un DataFrame nommé
dfest créé avec les colonnesdateetventes. La colonnedatecontient des dates sous forme de chaînes, et la colonneventescontient des chiffres représentant les ventes associées à chaque date.Décalage des valeurs de la colonne 'ventes' d'une ligne vers le bas
La méthode
shift(1)permet de décaler les valeurs d'une colonne d'un certain nombre de lignes. Ici,df['ventes'].shift(1)déplace toutes les valeurs de la colonneventesd'une ligne vers le bas. La première ligne de la colonneventes_decaleesdevientNaNpuisque la valeur précédente n'existe pas.Ce décalage est souvent utilisé pour effectuer des comparaisons entre valeurs successives ou pour calculer des différences entre les lignes d'un DataFrame.
Affichage du DataFrame après le décalage
La ligne
print(df)affiche le DataFrame après l'ajout de la colonneventes_decalees, qui contient les valeurs de la colonneventesdécalées d'une ligne vers le bas.