Použití tsCV() pro křížovou validaci časových řad
Funkce tsCV() počítá chyby křížové validace časových řad. Vyžaduje zadání časové řady, metody předpovědi a horizontu předpovědi. Tady je příklad z videa:
> e = tsCV(oil, forecastfunction = naive, h = 1)
V tomto cvičení použiješ tsCV() k výpočtu a vykreslení hodnot MSE pro až 8 kroků dopředu spolu s metodou naive() aplikovanou na data goog. Cvičení využívá grafiku ggplot2, se kterou možná nemáš zkušenosti, ale poskytnuli jsme dostatek kódu, abys zbytek snadno doplnil/a.
Nezapomeň si projít snímky o tsCV() z přednášky. Data goog jsou načtena do tvého pracovního prostředí.
Toto cvičení je součástí kurzu
Forecasting v R
Pokyny k cvičení
- Pomocí dat
googa funkcenaive()pro předpověď vypočítej křížově validované chyby pro až 8 kroků dopředu. Výsledek ulož do proměnnée. - Vypočítej hodnoty MSE pro každý horizont předpovědi a odstraň chybějící hodnoty v
ezadáním druhého argumentu. Výraz pro výpočet MSE je již připraven. - Vykresli výsledné hodnoty MSE (
y) proti horizontu předpovědi (x). Zamysli se nad tím, jak funkce pracují. Pokud je v seznamu argumentů funkce uvedenoMSE = mse, pakmseodkazuje na objekt existující v tvém pracovním prostředí mimo funkci, zatímcoMSEje název proměnné, která na tento objekt odkazuje uvnitř funkce.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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()