R如何重复具有特定顺序(例如ARIMA(0,0,2))的ARIMA模型60次

时间:2015-03-24 02:05:31

标签: r

我已经在列表中存储了60组数据,我想使用ARIMA(0,0,2)来拟合 第二天的数据和预测。代码如下所示,似乎如此 ts(x)存在一些问题。你能帮我解决这个问题吗?

> runArima <- function(ts){
+   Higher.R2.18. <- arima(ts,order=c(0,0,2))           
+   pred <- forecast(Higher.R2.18.,h=1)

+   return(list(arima=Higher.R2.18.,forecast=pred))

+ }

> library(forecast)
> for(i in 304:363)
+ {ts.list[i-303]<-list(mydata[2:i,4])}
> arima.list <- lapply(ts.list,runArima)
Error in ts(x) : object is not a matrix

1 个答案:

答案 0 :(得分:1)

尝试为函数的参数ts使用其他名称,例如xts是函数的名称(用于创建时间序列对象)。这会导致您在预测函数尝试访问对象ts时看到的错误。

这将如下所示:

runArima <- function(x){
+   Higher.R2.18. <- arima(x,order=c(0,0,2))           
+   pred <- forecast(Higher.R2.18.,h=1)
+   return(list(arima=Higher.R2.18.,forecast=pred))
+ }