Zacznij terazZacznij za darmo

Prognozowanie za pomocą modelu MA

Podobnie jak w przypadku modeli AR, użyjesz modeli MA do prognozowania danych wewnątrz próby i poza próbą, korzystając z funkcji plot_predict() z biblioteki statsmodels.

Dla symulowanej serii simulated_data_1 z parametrem \(\small \theta=-0.9\) wykreślisz prognozy wewnątrz próby i poza próbą. Jedną z istotnych różnic między prognozami poza próbą w modelu MA(1) a modelu AR(1) jest to, że w modelu MA(1) prognozy na więcej niż jeden okres w przód odpowiadają po prostu średniej z próby.

To ćwiczenie jest częścią kursu

Analiza szeregów czasowych w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj klasę ARIMA oraz funkcję plot_predict
  • Utwórz instancję klasy ARIMA o nazwie mod, używając danych symulowanych simulated_data_1 i rzędu modelu (p,d,q) (w tym przypadku dla modelu MA(1)): order=(0,0,1)
  • Dopasuj model mod za pomocą metody .fit() i zapisz wynik w obiekcie res
  • Wykreśl dane wewnątrz próby, zaczynając od punktu danych o indeksie 950
  • Wykreśl prognozy poza próbą wraz z przedziałami ufności, używając funkcji plot_predict(), zaczynając od punktu 950 i kończąc prognozę na punkcie 1010

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Import the ARIMA and plot_predict from statsmodels
from statsmodels.tsa.arima.model import ARIMA
from statsmodels.graphics.tsaplots import plot_predict

# Forecast the first MA(1) model
mod = ARIMA(___, order=___)
res = mod.fit()

# Plot the data and the forecast
fig, ax = plt.subplots()
simulated_data_1.loc[950:].plot(ax=ax)
plot_predict(res, start=___, end=___, ax=ax)
plt.show()
Edytuj i uruchom kod