Simuler un modèle de marche aléatoire avec dérive
Une marche aléatoire (RW) ne doit pas forcément osciller autour de zéro ; elle peut suivre une trajectoire ascendante ou descendante, c’est‑à‑dire présenter une dérive ou une tendance temporelle. On obtient cela en incluant une constante (intercepte) dans le modèle RW, qui correspond à la pente de la tendance temporelle de la RW.
Dans une autre formulation, vous pouvez prendre la somme cumulée d’une série de bruit blanc (WN) à moyenne constante, de sorte que cette moyenne corresponde à la pente de la tendance temporelle de la RW.
Pour simuler des données d’un modèle RW avec dérive, utilisez de nouveau la fonction arima.sim() avec l’argument model = list(order = c(0, 1, 0)). Cette fois, ajoutez l’argument supplémentaire mean = ... pour spécifier la variable de dérive, ou l’intercepte.
Cet exercice fait partie du cours
<cours>Analyse de séries temporelles en R</cours>Instructions de l’exercice
- Utilisez
arima.sim()pour générer un autre modèle RW. Définissez l’argumentmodelàlist(order = c(0, 1, 0))pour générer un modèle de type RW et définisseznà100pour produire 100 observations. Définissez l’argumentmeanà1pour introduire une dérive. Enregistrez le résultat dansrw_drift. - Utilisez
ts.plot()pour tracer vos donnéesrw_drift. - Utilisez
diff()pour calculer la première différence de vos donnéesrw_drift. Enregistrez cela dansrw_drift_diff. - Utilisez un autre appel à
ts.plot()pour tracerrw_drift_diff.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Generate a RW model with a drift uing arima.sim
rw_drift <- arima.sim(model = ___, n = ___, mean = ___)
# Plot rw_drift
# Calculate the first difference series
rw_drift_diff <-
# Plot rw_drift_diff