LoslegenKostenlos loslegen

Einfache Prognosen aus einem geschätzten MA-Modell

Nachdem du mit deinen Nile-Daten ein MA-Modell geschätzt hast, besteht der nächste Schritt darin, mit deinem Modell einfache Prognosen zu erstellen. Wie bei anderen Modelltypen kannst du die Funktion predict() verwenden, um einfache Vorhersagen aus deinem geschätzten MA-Modell zu machen. Denk daran: Der Wert $pred ist die Prognose, während $se der Standardfehler dieser Prognose ist; beide basieren auf dem angepassten MA-Modell.

Um Vorhersagen für mehrere Perioden über die letzte Beobachtung hinaus zu machen, kannst du erneut das Argument n.ahead = h in deinem Aufruf von predict() verwenden. Die Prognosen werden rekursiv von 1 bis h Schritte voraus ab dem Ende der beobachteten Zeitreihe gebildet. Beachte jedoch: Mit Ausnahme der 1-Schritt-Prognose sind alle Prognosen des MA-Modells gleich dem geschätzten Mittelwert (intercept).

In dieser Übung verwendest du das aus deinen Nile-Daten abgeleitete MA-Modell, um einfache Prognosen zu zukünftigen Abflussmengen des Nil zu erstellen. Dein MA-Modell aus der vorherigen Übung steht in deiner Umgebung bereit.

Diese Übung ist Teil des Kurses

Zeitreihenanalyse in R

Kurs anzeigen

Anleitung zur Übung

  • Verwende predict(), um eine Prognose für die Abflussmenge des Nil im Jahr 1971 zu erstellen. Speichere die Prognose in predict_MA.
  • Verwende predict_MA zusammen mit $pred[1], um die 1-Schritt-Prognose zu erhalten.
  • Verwende einen weiteren Aufruf von predict(), um eine Prognose von 1971 bis 1980 zu erstellen. Setze dazu das Argument n.ahead auf 10.
  • Führe den vorgegebenen Code aus, um die Zeitreihe Nile plus die Prognose und die 95-%-Vorhersageintervalle zu plotten.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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)
Code bearbeiten und ausführen