楽しんで学習するITエンジニアの備忘録ブログ

~日常生活の中にも楽しみを見出したい~

【第2弾】SARIMAで時系列分析に挑戦【自己相関(ACF)と偏自己相関(PACF)】

SARIMAを利用して、時系列データ分析に挑戦中である。

 

さあ、始めよう!

 

 

■時系列データは、月別の牛乳生産量

 

1962年1月から1975年12月までの約14年間で、レコード数は168行。

 

f:id:takanarukodou2:20210706182147p:plain

          図1.月別牛乳生産量の推移(1カ月単位)
 

■自己相関(ACF)と偏自己相関(PACF)

・自己相関(ACF)

 過去の値が、現在の値に対して、どの程度影響しているかを示すもの。

・偏自己相関(PACF)

 

 特定の時点同士のみの関係性に着目できる指標。

 例えば、本日と2日前の関係には間接的に1日前の影響が含まれる。

 しかし、偏自己相関を使うことによって、1日前の影響を除外して、

 本日と2日前のみの関係性を調べることが可能となる。

f:id:takanarukodou2:20210707203458p:plain

         図2.自己相関(ACF)と偏自己相関(PACF)

 

■ADF検定

 時系列データが単位根を持つかどうかの仮説検定を指す。

 差分値が定常過程であることを確認する必要がある。

 その事実を確認しなければ、ARIMAモデルを使うことはできない模様。

  Test Statistic -1.303812

  p-value 0.627427 -> 【62.7%】

  #Lags Used 13.000000

  Number of Observations Used 154.000000

  Critical Value (1%) -3.473543

  Critical Value (5%) -2.880498

  Critical Value (10%) -2.576878

 

  p値が閾値(5%または1%)より低い場合は、帰無仮説を棄却し、

 時系列は定常的と言える。 

 上記は、原系列のまま適用した結果である。

 見てみると、p値は62.7%!

 ※実行結果の出力は、Test StatisticとCritical Valueを比較して結果を確認する。

 ※Test Statistic(-1.30)は、Critical Value(5%)「-2.88」を下回っていない。

 ※そのため、「非定常である」という帰無仮説を棄却できない。

 基本的に、時系列データは原系列のままADF検定に当てはめたとしても、

 帰無仮説は棄却できないとのこと。

【python+株価+statsmodel】ARIMAモデルでダウ平均株価を解析してみた - ころがる狸 (dajiro.com)

【Python】「ADF検定」で時系列データの定常性・単位根を確認する | ミナピピンの研究室 (tkstock.site)

 

■次回

・差分を取った系列に対して、ADF検定を実行してみたい。

 df_diff = df.diff().diff(12)を実行した結果は、

 「1963-02-01 "-6.0"」となっているが、どのように計算しているのか?

※diff関数は、指定された軸に沿ってn番目の離散差を計算するもの。