Předpovědi pomocí MA modelu
Stejně jako u AR modelů využiješ MA modely k předpovědím dat uvnitř vzorku i mimo něj – tentokrát pomocí funkce plot_predict() ze statsmodels.
Pro simulovanou řadu simulated_data_1 s \(\small \theta=-0.9\) vykreslíš předpovědi pro data uvnitř vzorku i mimo něj. Jeden zásadní rozdíl oproti AR(1) modelu: u MA(1) modelu jsou předpovědi více než jedno období dopředu jednoduše průměrem vzorku.
Toto cvičení je součástí kurzu
Analýza časových řad v Pythonu
Pokyny k cvičení
- Importuj třídu
ARIMAa funkciplot_predict - Vytvoř instanci třídy
ARIMAs názvemmodpomocí simulovaných datsimulated_data_1a pořadí (p,d,q) modelu (v tomto případě pro MA(1)):order=(0,0,1) - Fituj model
modmetodou.fit()a výsledek ulož do objektures - Vykresli data uvnitř vzorku počínaje datovým bodem 950
- Vykresli předpovědi mimo vzorek včetně intervalů spolehlivosti pomocí funkce
plot_predict(), začínající datovým bodem 950 a končící předpovědí v bodě 1010
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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()