CommencerCommencez gratuitement

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>
Voir le cours

Instructions de l’exercice

  • Utilisez arima.sim() pour générer un autre modèle RW. Définissez l’argument model à list(order = c(0, 1, 0)) pour générer un modèle de type RW et définissez n à 100 pour produire 100 observations. Définissez l’argument mean à 1 pour introduire une dérive. Enregistrez le résultat dans rw_drift.
  • Utilisez ts.plot() pour tracer vos données rw_drift.
  • Utilisez diff() pour calculer la première différence de vos données rw_drift. Enregistrez cela dans rw_drift_diff.
  • Utilisez un autre appel à ts.plot() pour tracer rw_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

Modifier et exécuter le code