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 pd
Attributs :
Paramètre Description periods
Le 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_value
Valeur à utiliser pour remplir les valeurs manquantes générées par le décalage. Par défaut, c'est NaN
.axis
L'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 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 colonnesdate
etventes
. La colonnedate
contient des dates sous forme de chaînes, et la colonneventes
contient 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 colonneventes
d'une ligne vers le bas. La première ligne de la colonneventes_decalees
devientNaN
puisque 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 colonneventes
décalées d'une ligne vers le bas.