LoslegenKostenlos loslegen

tsCV() für Zeitreihen-Cross-Validation verwenden

Die Funktion tsCV() berechnet Fehler aus Zeitreihen-Cross-Validation. Du musst die Zeitreihe, die Prognosemethode und den Prognosehorizont angeben. Hier ist das im Video verwendete Beispiel:

> e = tsCV(oil, forecastfunction = naive, h = 1)

Hier wirst du tsCV() verwenden, um die MSE-Werte für bis zu 8 Schritte im Voraus zu berechnen und zu plotten, zusammen mit der Methode naive() auf den goog-Daten. Die Übung nutzt Grafiken aus ggplot2, mit denen du vielleicht noch nicht vertraut bist, aber wir haben genug Code vorgegeben, damit du den Rest ableiten kannst.

Sieh dir unbedingt die Folien zu tsCV() im Vortrag an. Die goog-Daten wurden in deinen Workspace geladen.

Diese Übung ist Teil des Kurses

Prognosen mit R

Kurs anzeigen

Anleitung zur Übung

  • Verwende die goog-Daten und prognostiziere mit der Funktion naive(), um die crossvalidierten Fehler für bis zu 8 Schritte im Voraus zu berechnen. Weisen diese e zu.
  • Berechne die MSE-Werte für jeden Prognosehorizont und entferne fehlende Werte in e, indem du das zweite Argument angibst. Der Ausdruck zur Berechnung von MSE wurde vorgegeben.
  • Plotte die resultierenden MSE-Werte (y) gegen den Prognosehorizont (x). Denke an dein Wissen über Funktionen: Wenn MSE = mse in der Liste der Funktionsargumente angegeben ist, dann sollte sich mse auf ein Objekt beziehen, das in deinem Workspace außerhalb der Funktion existiert, während MSE die Variable ist, mit der du innerhalb deiner Funktion auf dieses Objekt verweist.

Interaktive Übung

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

# Compute cross-validated errors for up to 8 steps ahead
e <- tsCV(___, forecastfunction = ___, h = ___)

# Compute the MSE values and remove missing values
mse <- colMeans(e^2, na.rm = ___)

# Plot the MSE values against the forecast horizon
data.frame(h = 1:8, MSE = mse) %>%
  ggplot(aes(x = h, y = ___)) + geom_point()
Code bearbeiten und ausführen