SARIMA modelleri

Python'da ARIMA Modelleri

James Fulton

Climate informatics researcher

SARIMA modeli

Mevsimsel ARIMA = SARIMA

  • Mevsimsel olmayan dereceler
    • p: otoregresif derece
    • d: fark alma derecesi
    • q: hareketli ortalama derecesi

SARIMA(p,d,q)(P,D,Q)$_S$

  • Mevsimsel dereceler
    • P: mevsimsel otoregresif derece
    • D: mevsimsel fark alma derecesi
    • Q: mevsimsel hareketli ortalama derecesi
    • S: döngü başına zaman adımı sayısı
Python'da ARIMA Modelleri

SARIMA modeli

ARIMA(2,0,1) modeli: $$y_t = a_1 y_{t-1} + a_2 y_{t-2} + m_1 \epsilon_{t-1} + \epsilon_t$$

SARIMA(0,0,0)(2,0,1)$_7$ modeli: $$y_t = a_7 y_{t-7} + a_{14} y_{t-14} + m_7 \epsilon_{t-7} + \epsilon_t$$

Python'da ARIMA Modelleri

SARIMA modeli kurma

# Imports
statsmodels.tsa.statespace.sarimax import SARIMAX

# Instantiate model model = SARIMAX(df, order=(p,d,q), seasonal_order=(P,D,Q,S))
# Fit model results = model.fit()
Python'da ARIMA Modelleri

Mevsimsel fark alma

Bir sezon önceki değeri çıkarın

$$\Delta y_t = y_t - y_{t-S}$$

# Take the seasonal difference
df_diff = df.diff(S)
Python'da ARIMA Modelleri

SARIMA için fark alma

Zaman serisi

Python'da ARIMA Modelleri

SARIMA için fark alma

Birinci farkı alınmış zaman serisi

Python'da ARIMA Modelleri

SARIMA için fark alma

Birinci fark ve birinci mevsimsel farkı alınmış zaman serisi

Python'da ARIMA Modelleri

p ve q bulma

Python'da ARIMA Modelleri

P ve Q bulma

Python'da ARIMA Modelleri

Mevsimsel ACF ve PACF çizimi

# Create figure
fig, (ax1, ax2) = plt.subplots(2,1)

# Plot seasonal ACF
plot_acf(df_diff,  lags=[12,24,36,48,60,72], ax=ax1)

# Plot seasonal PACF
plot_pacf(df_diff, lags=[12,24,36,48,60,72], ax=ax2)

plt.show()
Python'da ARIMA Modelleri

Haydi pratik yapalım!

Python'da ARIMA Modelleri

Preparing Video For Download...