時系列分析

Last-modified: 2007-06-23 (土) 12:16:08

 ここでは時系列分析の関数を目的別に紹介。x及びyはオブジェクト名とする。

目的関数解説及び備考パッケージ名
tsオブジェクトを作るts(x, start=c(年,月) , frequency= )startでデータの始まりを指定、endで終わりを指定できる。frequencyは年次なら1、月次なら12、四半期なら4となる)。
複数のtsオブジェクトを1つにまとめるts.union(x, y,...)
時系列のグラフを作成1plot(x)多変量の場合はグラフが別々に表示される。
時系列のグラフを作成2ts.plot(x)多変量でもグラフは別々にならないが、色か線でデータを区別することが必要。
階差(差分)をとるdiff(x, lag= )非定常時系列から定常時系列に変換。lagで何次の階差をとるか指定できる。
対数変換log( )バラツキを安定させる。
季節性を分解decompose( )トレンド、季節性、誤差に分解できる。加法モデル(additive)か乗法モデル(multiplicative)のどちらかが示される。
コレログラム(自己相関)acf(x, type="correlation")
コレログラム(偏自己相関)pacf(x, type="correlation")
コレログラム(自己共分散)acf(x, type="covariance")
コレログラム(相互相関)ccf(x,y, type="correlation")
コレログラム(相互共分散)ccf(x,y, type="covariance")
Phillips-Perron検定PP.test(x)単位根を検定。tseriese
Augmented Dickey-Fuller検定adf.test(x)単位根を検定。tseriese
Ljung-Box(Box-Pierce)検定Box.test(x$resid, lag=, type=”Ljung”)lagで残差が何次に渡って自己相関がないという帰無仮説を設定。typeを指定しなければBox-Pierce検定。
グレンジャー因果性検定grangertest(x, y, order= )orderで次数を指定。lmtest
Whiteの検定(その1)white.test(x,y)これに関しての詳しい議論は掲示板へtseries
Whiteの検定(その2)wnnTest(x)これに関しての詳しい議論は掲示板へfSeries
ARモデルar(x, method="")methodで用いる方法を指定。ols(最小二乗法)、mle(最尤法)、yw(Yule-Walker法)、burg(Burg法)等がある。
MAarima(x, order=c(0,0,q))qに移動平均の次数を指定。*MA(q)モデルはARIMA(0,0,q)と同じ。
ARMAarima(x, order=c(p, 0, q))pに自己回帰の次数、qに移動平均の次数を指定。*ARMA(p,q)はARIMA(p,0,q)と同じ。
ARIMA(季節性なし)arima(x, order=c(p,d,q))pに自己回帰の次数、dに階差(差分)の次数、qに移動平均の次数を指定。
ARIMA(季節性あり)arima(x, order=c(p,d,q), seasonal=list(order=c(P,D,Q)))Pに季節性の自己回帰の次数、Dに季節性の階差(差分)の次数、Qに季節性の移動平均の次数をそれぞれ指定。
ARCH
GARCHgarch(x, order=c(p,q))tseries
ARMA-GARCHgarchFit(formula.mean= , formula.var= )fSeries
VAR分析(ベクトル自己回帰分析)ar(x)ARと同じだが、オブジェクトは多変量になる。
VAR分析(ベクトル自己回帰分析)VAR(x, p= , type= )オブジェクトは多変量になる。p=でlagの次数を指定する。vars
モデルを使って予測predict(x, n.ahead=)xは使用したいモデル(AR、ARIMA等)。n.aheadで予測したい期間を指定(例:1期先ならn.ahead=1)。