Désaisonnalisation pendant la période fiscale
De nombreuses séries temporelles présentent une forte saisonnalité. La procédure qui consiste à retirer la composante saisonnière d’une série s’appelle la désaisonnalisation. Par exemple, la plupart des données économiques publiées par les administrations sont désaisonnalisées.
Vous avez vu plus tôt qu’en prenant les premières différences d’une marche aléatoire, on obtient un bruit blanc stationnaire. Pour la désaisonnalisation, au lieu de prendre les premières différences, vous allez prendre des différences avec un retard correspondant à la périodicité.
Regardez à nouveau l’ACF des bénéfices trimestriels de H&R Block, préchargés dans le DataFrame HRB : on observe une composante saisonnière nette. L’autocorrélation est élevée aux retards 4, 8, 12, 16, … en raison du pic de bénéfices tous les quatre trimestres pendant la saison des impôts. Appliquez une désaisonnalisation en prenant la différence d’ordre quatre (quatre correspond à la périodicité de la série). Calculez ensuite l’autocorrélation de la série transformée.
Cet exercice fait partie du cours
Analyse des séries temporelles en Python
Instructions
- Créez un nouveau DataFrame de bénéfices désaisonnalisés en prenant la différence à retard 4 des bénéfices trimestriels avec la méthode
.diff(). - Examinez les 10 premières lignes du DataFrame désaisonnalisé et notez que les quatre premières lignes sont
NaN. - Supprimez les lignes
NaNavec la méthode.dropna(). - Tracez la fonction d’autocorrélation du DataFrame désaisonnalisé.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import the plot_acf module from statsmodels
from statsmodels.graphics.tsaplots import plot_acf
# Seasonally adjust quarterly earnings
HRBsa = ___
# Print the first 10 rows of the seasonally adjusted series
print(HRBsa.___)
# Drop the NaN data in the first four rows
HRBsa = ___
# Plot the autocorrelation function of the seasonally adjusted series
plot_acf(HRBsa)
plt.show()