1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Forecasting v R

Connected

cvičení

Porovnání auto.arima() a ets() na sezónních datech

Co dělat, když chceš vytvořit trénovací a testovací sady pro data s vyšší frekvencí než roční? V takovém případě můžeš jako hodnotu parametrů start a/nebo end ve funkci window() použít vektor ve formátu c(rok, období). Nezapomeň také nastavit správnou hodnotu h v predikčních funkcích. Platí, že h by mělo odpovídat délce dat v testovací sadě.

Například: pokud tvá data pokrývají 15 let, trénovací sada tvoří prvních 10 let a chceš předpovědět posledních 5 let, použiješ h = 12 * 5, nikoli h = 5 – testovací sada totiž obsahuje 60 měsíčních pozorování. Pokud trénovací sada pokrývá prvních 9,5 roku a chceš předpovědět posledních 5,5 roku, použiješ h = 66, abys zohlednil/a těch extra 6 měsíců.

V závěrečném cvičení této kapitoly porovnáš sezónní modely ARIMA a ETS aplikované na čtvrtletní data produkce cementu qcement. Protože je řada velmi dlouhá, můžeš si dovolit použít trénovací a testovací sadu místo křížové validace časových řad – je to výrazně rychlejší.

Data qcement jsou dostupná v tvém pracovním prostředí.

Pokyny

100 XP
  • Vytvoř trénovací sadu s názvem train z 20 let dat qcement začínající rokem 1988 a končící posledním čtvrtletím roku 2007; pro end musíš použít vektor. Zbývající data tvoří testovací sadu.
  • Přizpůsob modely ARIMA a ETS trénovacím datům a ulož je jako fit1, respektive fit2.
  • Stejně jako v předchozích cvičeních zkontroluj, zda mají oba modely rezidua odpovídající bílému šumu.
  • Z obou modelů vytvoř predikce pro zbývající data jako fc1, respektive fc2. Nastav h na celkový počet čtvrtletí v testovací sadě. Pozor – poslední pozorování v qcement není poslední čtvrtletí roku!
  • Pomocí funkce accuracy() urči lepší model na základě hodnoty RMSE a ulož ho jako bettermodel.