Appliquer une fenêtre glissante avec rolling()
L’application d’une fenêtre glissante avec rolling() permet de calculer des statistiques sur un sous-ensemble de données qui se déplacent le long de la série temporelle. Par exemple, on peut calculer des moyennes mobiles, des sommes cumulées ou d’autres métriques en fonction de la taille de la fenêtre spécifiée. Cela permet d’analyser les tendances locales dans des séries de données avec des périodes définies.
Fonctions :
-
rolling()
La fonction rolling() de Pandas permet d'appliquer des opérations sur une fenêtre glissante de valeurs dans une colonne. Une fenêtre glissante permet d'effectuer un calcul sur un sous-ensemble de données successives, en faisant glisser cette fenêtre sur l'ensemble du DataFrame. Cela est particulièrement utile pour calculer des statistiques mobiles telles que la moyenne mobile, la somme mobile, ou l'écart-type mobile, souvent utilisées dans l'analyse des séries temporelles ou l'analyse des tendances.
Importation :
import pandas as pdAttributs :
Paramètre Description windowLe nombre d'observations à inclure dans chaque fenêtre. Par exemple, window=3signifie que les calculs seront effectués sur une fenêtre de 3 valeurs successives.min_periodsLe nombre minimum d'observations non-nulles dans la fenêtre nécessaire pour effectuer le calcul. Par défaut, il est égal à la taille de la fenêtre. axisL'axe sur lequel effectuer l'opération. Par défaut, c'est 0pour les lignes.closedDéfinit si la fenêtre est fermée à gauche, à droite, ou les deux. Par défaut, la fenêtre est ouverte à droite ( 'right').Exemple de code :
import pandas as pd # Création d'un DataFrame exemple data = { 'date': ['2025-01-01', '2025-01-02', '2025-01-03', '2025-01-04', '2025-01-05'], 'ventes': [100, 150, 200, 250, 300] } df = pd.DataFrame(data) # Application de la moyenne mobile sur une fenêtre glissante de 3 jours df['moyenne_rolling'] = df['ventes'].rolling(window=3).mean() # Affichage du DataFrame après application de la moyenne mobile 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.Application de la moyenne mobile sur une fenêtre glissante de 3 jours
La méthode
rolling(window=3)permet d'appliquer une opération de fenêtre glissante sur une série de données. Ici,window=3spécifie une fenêtre de 3 jours.Ensuite, la méthode
mean()calcule la moyenne des valeurs dans cette fenêtre de 3 jours consécutifs. Le résultat est stocké dans la colonnemoyenne_rollingdu DataFrame, qui montre la moyenne mobile des ventes sur les 3 jours précédents.Pour les deux premières lignes du DataFrame, la colonne
moyenne_rollingcontiendra la valeurNaN, car il n'y a pas assez de données pour calculer une moyenne sur 3 jours.Affichage du DataFrame après application de la moyenne mobile
La ligne
print(df)affiche le DataFrame après l'ajout de la colonnemoyenne_rolling, qui contient les moyennes mobiles des ventes pour chaque jour, calculées sur une fenêtre glissante de 3 jours.