首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在预测包中找不到对象错误

在预测包中找不到对象错误
EN

Stack Overflow用户
提问于 2019-03-27 03:30:24
回答 1查看 694关注 0票数 1

我正在使用R(版本3.5.3)中的预测包(版本8.5),尝试使用宏伟的auto.arima()函数进行一些ARIMA预测。

当运行这个函数时,我总是收到一个错误代码,上面写着"Error in eval(expr,p):object 'fitxreg‘not found“。我已经尝试过调试,但我不能找出问题的确切原因,但当我恢复到预测8.4时,这段代码可以正常工作。

代码语言:javascript
复制
arimaIssue <- function(fitxreg = NULL, forxreg = NULL){
  library(forecast)

  fit <- auto.arima(AirPassengers[1:87], 
                    seasonal = FALSE, 
                    xreg = fitxreg, lambda = 'auto', allowmean = TRUE)

  fcast <- forecast(fit, xreg = forxreg, h = 3)

  return(fcast)
}

arimaIssue()

我希望这会从auto.arima()返回一个不使用外部回归器的预测对象(请注意,fitxreg和forxreg都为空)。然而,我只是得到了上面描述的错误。

任何帮助都是非常感谢的!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-27 04:02:31

明白了!

问题是fit对象包含外部回归器的名称‘fit goes’,当forecast()查找‘fit goes’时,它什么也找不到。下面对代码的更新现在生成一个预测。感谢Hector提供的关于发生了什么的线索!

代码语言:javascript
复制
arimaIssue <- function(fitxreg = NULL, forxreg = NULL){
  library(forecast)

  fit <- auto.arima(AirPassengers[1:87], seasonal = FALSE, xreg = fitxreg, lambda = 'auto',
                    allowmean = TRUE)

  if(is.null(fitxreg)){
    fit$call$xreg <- NULL
  }


  fcast <- forecast(fit, xreg = forxreg, h = 3)

  return(fcast)
}

arimaIssue()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55364936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档