Zacznij terazZacznij za darmo

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

Zobacz kurs

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 danych cement z horyzontem prognozy równym 4. Jako argument funkcji prognozowania użyj odpowiednio: nowo utworzonej funkcji fets dla e1 oraz istniejącej funkcji snaive dla e2.
  • 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 <- ___
Edytuj i uruchom kod