Cours
Si vous souhaitez suivre notre cours Introduction to Time Series Analysis in R, voici le lien.
Calcul des autocorrélations
Les autocorrélations, ou corrélations décalées, servent à évaluer si une série temporelle dépend de son passé. Pour une série x de longueur n, on considère les n-1 paires d’observations séparées d’une unité de temps. La première paire est (x[2],x[1]), puis (x[3],x[2]), etc. Chaque paire a la forme (x[t],x[t-1]) où t est l’indice d’observation, variant ici de 2 à n. L’autocorrélation au décalage 1 (lag-1) de x peut être estimée par la corrélation empirique de ces paires (x[t], x[t-1]).
De manière générale, on peut créer ces paires manuellement. Créez d’abord deux vecteurs, x_t0 et x_t1, chacun de longueur n-1, de sorte que les lignes correspondent aux paires (x[t], x[t-1]). Appliquez ensuite la fonction cor() pour estimer l’autocorrélation au décalage 1.
Heureusement, la commande acf() offre un raccourci. En appliquant acf(..., lag.max = 1, plot = FALSE) à une série x, le calcul de l’autocorrélation au décalage 1 est automatique.
Notez enfin que les deux estimations diffèrent légèrement, car elles utilisent des normalisations différentes pour la covariance empirique, 1/(n-1) contre 1/n. Bien que la seconde soit biaisée, elle est privilégiée en analyse de séries temporelles, et les estimations d’autocorrélation ne diffèrent que d’un facteur (n-1)/n.
Dans cet exercice, vous pratiquerez à la fois le calcul manuel et automatique d’une autocorrélation au décalage 1. La série temporelle x et sa longueur n (150) ont déjà été chargées. La série est affichée dans le graphique à droite.
Instructions
- Créez deux vecteurs,
x_t0etx_t1, chacun de longueurn-1, de sorte que les lignes correspondent aux paires(x[t], x[t-1]). - Confirmez que
x_t0etx_t1forment bien des paires(x[t], x[t-1])à l’aide du code préécrit. - Utilisez
plot()pour afficher le nuage de points dex_t0etx_t1. - Utilisez
cor()pour afficher la corrélation entrex_t0etx_t1. - Utilisez
acf()avecxpour calculer automatiquement l’autocorrélation au décalage 1. Définissez l’argumentlag.maxà1pour ne produire qu’un seul décalage etplotàFALSE. - Confirmez que le facteur de différence est
(n-1)/nà l’aide du code préécrit.
Si tout est clair, passez à l’exercice suivant ! Sinon, voici une vidéo d’aperçu.
Vidéo d’aperçu sur l’autocorrélation
La fonction d’autocorrélation
On peut estimer les autocorrélations à de nombreux décalages pour mieux évaluer la relation d’une série temporelle avec son passé. Nous nous intéressons généralement le plus à la relation avec le passé immédiat.
La fonction acf(..., lag.max = ..., plot = FALSE) estime toutes les autocorrélations pour les décalages 0, 1, 2, …, jusqu’à la valeur indiquée par l’argument lag.max. Dans l’exercice précédent, vous vous êtes concentré sur l’autocorrélation au décalage 1 en fixant lag.max à 1.
Dans cet exercice, vous explorerez d’autres usages de la commande acf(). Là encore, la série temporelle x est préchargée et affichée dans le graphique à droite.
Instructions
- Utilisez
acf()pour afficher les autocorrélations de la sériexde 0 à 10. Définissezlag.maxà10et laissezplotàFALSE. - Copiez-collez l’estimation de l’autocorrélation (ACF) au décalage 10.
- Copiez-collez l’estimation de l’autocorrélation (ACF) au décalage 5.
Visualiser la fonction d’autocorrélation
Estimer la fonction d’autocorrélation (ACF) à de nombreux décalages permet d’évaluer la relation d’une série x avec son passé. Les valeurs numériques sont utiles pour des calculs détaillés, mais il est également précieux de visualiser l’ACF en fonction du décalage.
En réalité, la commande acf() produit par défaut une figure. Elle choisit aussi une valeur par défaut pour lag.max, le nombre maximal de décalages à afficher.
Trois séries temporelles x, y et z ont été chargées dans votre environnement R et sont tracées à droite. La série x montre une forte persistance : la valeur actuelle est étroitement liée à celles qui la précèdent. La série y présente une périodicité avec un cycle d’environ quatre observations : la valeur actuelle est relativement proche de l’observation située quatre pas en arrière. La série z ne présente pas de motif clair.
Dans cet exercice, vous tracerez l’ACF estimée de chaque série. Dans les graphiques produits par acf(), le décalage de chaque estimation est indiqué en abscisse, et l’estimation elle‑même par la hauteur des barres verticales. Rappel : l’ACF au décalage 0 vaut toujours 1.
Enfin, chaque graphique ACF affiche une paire de lignes bleues horizontales en pointillé représentant des intervalles de confiance à 95 % par décalage, centrés sur zéro. Ils servent à déterminer la significativité statistique d’une estimation d’autocorrélation donnée par rapport à la valeur nulle zéro, c’est‑à‑dire l’absence d’autocorrélation à ce décalage.
Instructions
Utilisez trois appels à la fonction acf() pour afficher les ACF estimées de chacune de vos trois séries temporelles (x, y et z). Il n’est pas nécessaire de préciser d’arguments supplémentaires dans vos appels à acf().
Pour en apprendre davantage avec ce cours, voici le lien.
Découvrez notre Time Series Analysis using R: Tutorial.