CommencezCommencez gratuitement

Transformer des données brutes

Au chapitre précédent, vous avez calculé la moyenne mobile. Dans cet exercice, vous allez définir une fonction qui calcule la variation en pourcentage du dernier point de données par rapport à la moyenne d'une fenêtre de points précédents. Cette fonction vous aidera à calculer la variation en pourcentage sur une fenêtre glissante.

Il s'agit d'un type de série temporelle plus stable, souvent utile en Machine Learning.

Cette activité fait partie du cours

Machine Learning pour les données chronologiques en Python

Voir le cours

Instructions de l’exercice

  • Définissez une fonction percent_change qui prend une série temporelle en entrée et fait ce qui suit :
    • Extraire toutes les valeurs sauf la dernière de la série d'entrée (affectées à previous_values) ainsi que la dernière valeur seulement de la série temporelle (affectée à last_value).
    • Calculer l'écart en pourcentage entre la dernière valeur et la moyenne des valeurs précédentes.
  • En utilisant une fenêtre glissante de 20, appliquez cette fonction à prices, puis visualisez le résultat avec le code fourni.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Your custom function
def percent_change(series):
    # Collect all *but* the last value of this window, then the final value
    previous_values = series[:____]
    last_value = series[-1]

    # Calculate the % difference between the last value and the mean of earlier values
    percent_change = (____ - np.mean(previous_values)) / np.mean(previous_values)
    return percent_change

# Apply your custom function and plot
prices_perc = prices.rolling(20).____
prices_perc.loc["2014":"2015"].plot()
plt.show()
Modifier et exécuter le code