ARIMA建模

时间:2016-07-10 18:51:08

标签: r time-series

我正在尝试将ARIMA模型应用到我的时间序列中。

我正在努力为我的时间序列获得最佳模型,如下所示,

best.aic<-Inf
for(p in 0:6){
  for(d in 0:6){
    for(q in 0:6){
      fit<-arima(nasdaq_ts,order=c(p,d,q))
      fit.aic<- fit$aic
      if (fit.aic < best.aic) {
        best.aic<-fit.aic
        best.fit<-fit
        best.order<-c(p,d,q)
        }
      }
    }
  }

但我收到的错误如下:

Error in optim(init[mask], armafn, method = optim.method, hessian = TRUE,  : 
  initial value in 'vmmin' is not finite

我无法理解上述错误或导致什么错误? 有人可以帮助我吗

我的时间序列如下,

enter image description here

2 个答案:

答案 0 :(得分:2)

您熟悉auto.arima功能吗?它包含的参数允许您指定要搜索的模型空间,以及要执行的搜索类型。

答案 1 :(得分:0)

试试这段代码: -

nasdaqfinal.aic <- Inf
nasdaqfinal.order <- c(0,0,0)
for (p in 0:6) for (d in 0:6) for (q in 0:6) {
nasdaqcurrent.aic <- AIC(arima(data, order=c(p, d, q)))
if (nasdaqcurrent.aic < nasdaqfinal.aic) {
nasdaqfinal.aic <- nasdaqcurrent.aic
nasdaqfinal.order <- c(p, d, q)
nasdaqfinal.arima <- arima(data, order=nasdaqfinal.order)
}
}