Automatyczne modele ARIMA dla sezonowych szeregów czasowych
Jak pokazano w lekcji wideo, funkcja auto.arima() działa również z danymi sezonowymi. Pamiętaj, że ustawienie lambda = 0 w funkcji auto.arima() – czyli zastosowanie transformacji logarytmicznej – powoduje dopasowanie modelu do przekształconych danych, a prognozy są następnie odwracane do oryginalnej skali.
Po wywołaniu summary() na takim dopasowanym modelu możesz zobaczyć wynik podobny do poniższego, odpowiadający postaci \((p,d,q)(P,D,Q)[m]\):
ARIMA(0,1,4)(0,1,1)[12]
W tym ćwiczeniu użyjesz tych funkcji, aby zamodelować i prognozować wczytane dane h02, które zawierają miesięczną sprzedaż leków kortykosteroidowych w Australii.
To ćwiczenie jest częścią kursu
Prognozowanie w R
Instrukcje do ćwiczenia
- Korzystając ze standardowej funkcji rysowania wykresów, zwizualizuj logarytm danych
h02, aby sprawdzić, czy wariancja jest stabilna. - Dopasuj sezonowy model ARIMA do szeregu
h02z parametremlambda = 0. Zapisz wynik do zmiennejfit. - Podsumuj dopasowany model za pomocą odpowiedniej funkcji.
- Jakie stopnie różnicowania zostały użyte w modelu? Przypisz wartość różnicowania z opóźnieniem 1 do zmiennej
d, a różnicowania sezonowego do zmiennejD. - Narysuj prognozy na kolejne 2 lata, korzystając z dopasowanego modelu. Ustaw odpowiednio wartość
h.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Check that the logged h02 data have stable variance
h02 %>% ___ %>% ___
# Fit a seasonal ARIMA model to h02 with lambda = 0
fit <- ___
# Summarize the fitted model
___
# Record the amount of lag-1 differencing and seasonal differencing used
d <- ___
D <- ___
# Plot 2-year forecasts
fit %>% ___ %>% ___