Zaman serilerini durağanlaştırma

Python'da ARIMA Modelleri

James Fulton

Climate informatics researcher

Genel bakış

  • Durağanlık için istatistiksel testler
  • Veri setini durağanlaştırma
Python'da ARIMA Modelleri

Genişletilmiş Dickey-Fuller testi

  • Trend durağan olmama için testler
  • Sıfır hipotezi: zaman serisi durağan değildir
Python'da ARIMA Modelleri

adfuller testini uygulama

from statsmodels.tsa.stattools import adfuller

results = adfuller(df['close'])
Python'da ARIMA Modelleri

Test sonucunu yorumlama

print(results)
(-1.34, 0.60, 23, 1235, {'1%': -3.435, '5%': -2.913, '10%': -2.568}, 10782.87)
    1. eleman: test istatistiği (-1.34)
      • Daha negatif → durağan olma olasılığı daha yüksek
    1. eleman: p-değeri (0.60)
      • p küçükse → sıfır hipotezini reddedin. Durağan değildir hipotezini reddedin.
    1. eleman: kritik değerler
Python'da ARIMA Modelleri

Test sonucunu yorumlama

print(results)
(-1.34, 0.60, 23, 1235, {'1%': -3.435, '5%': -2.863, '10%': -2.568}, 10782.87)
    1. eleman: test istatistiği (-1.34)
      • Daha negatif → durağan olma olasılığı daha yüksek
    1. eleman: p-değeri (0.60)
      • p küçükse → sıfır hipotezini reddedin. Durağan değildir hipotezini reddedin.
    1. eleman: kritik değerler
1 https://www.statsmodels.org/dev/generated/statsmodels.tsa.stattools.adfuller.html
Python'da ARIMA Modelleri

Görselleştirmenin değeri

  • Zaman serisini çizmek, yanlış varsayımları önleyebilir
Python'da ARIMA Modelleri

Görselleştirmenin değeri

Python'da ARIMA Modelleri

Bir zaman serisini durağan yapmak

Python'da ARIMA Modelleri

Fark alma

Fark alma: $\Delta y_t = y_t - y_{t-1}$

Python'da ARIMA Modelleri

Fark alma

df_stationary = df.diff()
            city_population
date                       
1969-09-30              NaN
1970-03-31        -0.116156
1970-09-30         0.050850
1971-03-31        -0.153261
1971-09-30         0.108389
Python'da ARIMA Modelleri

Fark alma

df_stationary = df.diff().dropna()
            city_population
date                       
1970-03-31        -0.116156
1970-09-30         0.050850
1971-03-31        -0.153261
1971-09-30         0.108389
1972-03-31        -0.029569
Python'da ARIMA Modelleri

Fark alma

Python'da ARIMA Modelleri

Diğer dönüşümler

Diğer dönüşüm örnekleri

  • Log al
    • np.log(df)
  • Kareköke al
    • np.sqrt(df)
  • Oransal değişim al
    • df.shift(1)/df
Python'da ARIMA Modelleri

Ayo berlatih!

Python'da ARIMA Modelleri

Preparing Video For Download...