ETS kontra sezonowa metoda naiwna
W tym ćwiczeniu porównasz prognozy ETS z sezonową metodą naiwną dla 20-letnich danych cement, zawierających kwartalną produkcję cementu. Do oceny wykorzystasz krzyżową walidację szeregów czasowych z horyzontem 4 kroków do przodu. Ponieważ obliczenia mogą chwilę potrwać, w obszarze roboczym dostępna będzie skrócona wersja szeregu cement.
Drugi argument funkcji tsCV() musi zwracać obiekt prognozy, dlatego potrzebna jest funkcja, która dopasowuje model i zwraca prognozy. Przypomnij sobie:
> args(tsCV)
function (y, forecastfunction, h = 1, ...)
W tym ćwiczeniu skorzystasz zarówno z gotowej funkcji prognozowania, jak i z funkcji przygotowanej specjalnie dla ciebie. Pamiętaj – czasem proste metody sprawdzają się lepiej niż bardziej zaawansowane!
To ćwiczenie jest częścią kursu
Prognozowanie w R
Instrukcje do ćwiczenia
- Funkcja zwracająca prognozy ETS,
fets(), została już dla ciebie napisana. - Zastosuj
tsCV()dla metody ETS oraz sezonowej metody naiwnej na danychcementz horyzontem prognozy równym 4. Jako argument funkcji prognozowania użyj odpowiednio: nowo utworzonej funkcjifetsdlae1oraz istniejącej funkcjisnaivedlae2. - Oblicz MSE wynikających błędów 4-krokowych i usuń brakujące wartości. Wyrażenia do obliczania MSE zostały już dla ciebie przygotowane, ale brakuje w nich drugich opcjonalnych argumentów (używałeś ich już wcześniej).
- Zapisz najlepsze MSE jako
bestmse. Możesz po prostu skopiować cały wiersz kodu generujący najlepsze MSE z poprzedniej instrukcji.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Function to return ETS forecasts
fets <- function(y, h) {
forecast(ets(y), h = h)
}
# Apply tsCV() for both methods
e1 <- tsCV(___, ___, h = ___)
e2 <- tsCV(___, ___, h = ___)
# Compute MSE of resulting errors (watch out for missing values)
mean(e1^2, ___)
mean(e2^2, ___)
# Copy the best forecast MSE
bestmse <- ___