CommencezCommencez gratuitement

Prévisions simples à partir d'un modèle MA estimé

Maintenant que vous avez estimé un modèle MA avec vos données Nile, l'étape suivante consiste à produire quelques prévisions simples avec ce modèle. Comme pour d'autres types de modèles, vous pouvez utiliser la fonction predict() pour obtenir des prévisions simples à partir de votre modèle MA estimé. Rappelez-vous que la valeur $pred correspond à la prévision, tandis que la valeur $se est l'erreur-type de cette prévision, chacune étant calculée à partir du modèle MA ajusté.

Encore une fois, pour faire des prévisions sur plusieurs périodes au-delà de la dernière observation, vous pouvez utiliser l'argument n.ahead = h dans votre appel à predict(). Les prévisions sont générées de façon récursive de 1 à h étapes à partir de la fin de la série chronologique observée. Toutefois, notez qu'à l'exception de la prévision à 1 étape, toutes les prévisions d'un modèle MA sont égales à la moyenne estimée (intercept).

Dans cet exercice, vous utiliserez le modèle MA obtenu à partir de vos données Nile pour faire des prévisions simples des débits futurs du Nil. Votre modèle MA de l'exercice précédent est disponible dans votre environnement.

Cette activité fait partie du cours

Analyse des séries chronologiques en R

Voir le cours

Instructions de l’exercice

  • Utilisez predict() pour produire une prévision du débit du Nil en 1971. Stockez la prévision dans predict_MA.
  • Utilisez predict_MA avec $pred[1] pour obtenir la prévision à 1 étape.
  • Faites un autre appel à predict() pour obtenir des prévisions de 1971 à 1980. Pour ce faire, fixez l'argument n.ahead à 10.
  • Exécutez le code fourni pour tracer la série Nile ainsi que la prévision et les intervalles de prédiction à 95 %.

Exercice interactif pratique

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

# Make a 1-step forecast based on MA
predict_MA <-

# Obtain the 1-step forecast using $pred[1]


# Make a 1-step through 10-step forecast based on MA


# Plot the Nile series plus the forecast and 95% prediction intervals
ts.plot(Nile, xlim = c(1871, 1980))
MA_forecasts <- predict(MA, n.ahead = 10)$pred
MA_forecast_se <- predict(MA, n.ahead = 10)$se
points(MA_forecasts, type = "l", col = 2)
points(MA_forecasts - 2*MA_forecast_se, type = "l", col = 2, lty = 2)
points(MA_forecasts + 2*MA_forecast_se, type = "l", col = 2, lty = 2)
Modifier et exécuter le code