Rを使った時系列データを分析するにあたり、
次数p,qの「ARMA(自己回帰移動平均)」モデル選択をしたいと考えております。
AICに基づく次数選択をするにあたり、p,qにはそれぞれ「0,1,2,3」の組み合わせを設定し推定を行いたいと考えています。
なお、時系列データには「株価」を想定し、例えば以下のような10個(10日分)の株価変動データを利用すると仮定します。
data <- c(5780, 5710, 5710, 5810, 5660, 5630, 5530, 5310, 5470, 5440)
以下のコードを実行しました。
R
1# 株価のデータを入力 2data <- c(5780, 5710, 5710, 5810, 5660, 5630, 5530, 5310, 5470, 5440) 3 4# トレンド成分を除くため、対数差分データに変換 5data.d <- diff(log(data)) 6 7# p,q=0-3でマトリックス表にしてAICを計算 8aicpq <- function() { 9 aics <- matrix(numeric(4*4), ncol=4) 10 for (i in 0:3) { 11 for (k in 0:3) { 12 tmp <- arima(data.d, order=c(i,0,k)) 13 aics[i+1, k+1] <- tmp$aic 14 } 15 } 16 return(aics) 17} 18aics <- aicpq(data.d) 19aics
その結果、下から2行目のコードの箇所で以下のエラーが発生してしまいます。
aicpq(data.d) でエラー: 使われていない引数 (data.d)
どこかコードが間違っているかご教示いただくことは可能でしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/21 16:40