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
Anleitung zur Übung
- Verwende die
goog-Daten und prognostiziere mit der Funktionnaive(), um die crossvalidierten Fehler für bis zu 8 Schritte im Voraus zu berechnen. Weisen dieseezu. - 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: WennMSE = msein der Liste der Funktionsargumente angegeben ist, dann sollte sichmseauf ein Objekt beziehen, das in deinem Workspace außerhalb der Funktion existiert, währendMSEdie 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()