R Time Series Analysis 時系列解析(14) SARIMAモデル
SARIMAモデルとは
ARIMAモデルの変化形であるSARIMAモデルの確認を忘れていた。SARIMAモデルとは、通常のARIMA(p,d,q)と季節階差に関するARIMA(k,l,m)を合わせたモデル。季節階差とは、例えば「前年同期との差」のこと。1周期がsである場合に、季節階差を
と書くことが出来る。l回季節階差をとった場合はと書く。がAR過程に従うのであれば、
として、
(1)
と書ける。MA過程部分を
として(1)に追加すれば、
(2)
と書ける。(2)はがARIMA(k,l,m)に従うモデル。このモデルは間の関係のみを含んでいるため、これに通常のに関するARIMA(p,d,q)を重ねる。
(3)
もちろん、
という意味。…なので、(3)は季節階差がARIMA(k,l,m)に従う系列が、ARIMA(p,d,q)に従うモデルを意味する。これをSARIMA(seasonal ARIMA)と呼ぶ。
RでSARIMAモデルを使ってみる
Rではarima()関数の引数seasonalに季節階差のARIMAモデルのk,l,mおよび周期を与えてやることでSARIMAモデルを使うことが出来る。季節性が無いと話にならないので、野菜のデータを使うことにした。 東京都中央卸売市場の月別入荷量の推移らしい。ここではダウンロードしたデータのうち、玉ねぎのみを残し、縦軸がYear, 横軸がMonthのデータ(平成元年~23年)を用いる。
まず、下準備とグラフ図示、自己相関係数のチェック。
yasai <- read.csv("yasai.csv",header=TRUE,row.names=1) yasai_dat <- rep(0,nrow(yasai)*ncol(yasai)) k <- 1 for (i in 1:nrow(yasai)){ for (j in 1:ncol(yasai)) { yasai_dat[k] <- yasai[i,j] k <- k + 1 } } yasai_ts <- ts(yasai_dat,start=c(1989,1),frequency=12) par(mfrow=c(2,1)) plot(yasai_ts) acf(yasai_ts) par(mfrow=c(1,1))
面白い程に波打っている。例年、入荷量が最大になる月はほぼ同じで、前年の結果との相関が強いことがわかる。当たり前といえば当たり前。
とりあえず検定うんぬんの話は置いておき、SARIMAを当てはめる。おそらく一回階差をとると線形トレンドが除去されて定常過程になりそうなのでARIMA(1,1,1)とする(p,q=1は慣例)。季節階差についても(この場合は前年同期との差)線形下降トレンドを描いているのでARIMA(1,1,1)とする(これもp,q=1は慣例)。
kisetsu <- list(order=c(1,1,1),period=12) (sarima111 <- arima(yasai_ts,order=c(1,1,1),seasonal=kisetsu,transform.pars=FALSE))
#引数transform.parsはデフォルトでTRUEで、AR部分の係数については、定常性の条件を満たす範囲で尤度を最大化する。
結果が出てきた。
Call: arima(x = yasai_ts, order = c(1, 1, 1), seasonal = kisetsu, transform.pars = FALSE) Coefficients: ar1 ma1 sar1 sma1 0.2956 -0.9174 0.0592 -0.7878 s.e. 0.0750 0.0400 0.0788 0.0478 sigma^2 estimated as 850404: log likelihood = -2174.83, aic = 4359.67
…というわけで、結果は
となることがわかった。ついでに、モデルの残差について調べる。
par(mfrow=c(2,1)) resi <- sarima111$resid yasai_tshat <- yasai_ts - resi plot(yasai_ts,type="l",main="東京卸売市場たまねぎ入荷量(トン)") lines(yasai_tshat,lty=2,col=2) plot(resi,type="l",col=4,main="残差系列") abline(h=mean(resi)) par(mfrow=c(1,1))
結果は下記の通り。残差はARIMAのノイズ項によって発生する。下記グラフの赤線がモデルによる推定値となる。下のグラフはノイズ項による影響。
相変わらずARIMAの次数p,d,qの決定は勘に頼らざるを得ない感がある。今後の課題としておく。