Rを使用してArimaを実行するためにforループを実行しています.forループはp、d、q値を変更し、arimaを実行し、pdq値をデータフレームに保存します。しかし、このプロセスでは、一部の pdq 値がエラーをスローし、for ループが停止しています。完全なループを完了せずに for ループを途中で停止させたくありません。for ループを中断せず、エラー以外のすべての pdq 値を保存することは可能ですか?
質問する
1310 次
1 に答える
3
あなたが探しているtry
。(または、tryCatch
)
私はあなたが次のようなものを実行していると仮定しています:
for (p in ..)
for (q in...)
...
mod <- arima(x, c(p,d,q))
もしそうなら、単にその最後の行を
mod <- try(arima(x, c(p,d,q)), silent=TRUE)
# the silent is optional
ただし、おそらく次のことを行った方がよいでしょう。
pdq <- expand.grid(p, d, q)
apply(pdq, 1, function(o) try(arima(x, o), silent=TRUE))
最後に、釣りだけではないことを確認してください http://xkcd.com/882/
于 2013-05-18T04:40:01.517 に答える