r - auto.arima() 似乎在给定相同数据的情况下选择不同的模型
问题描述
我正在尝试类似https://otexts.com/fpp2/lagged-predictors.htmlauto.arima
中的示例,并注意到我得到不同的结果取决于我是否明确指定(所有)数据行。MWE:
library(forecast); library(fpp2)
nrow(insurance)
auto.arima(insurance[,1], xreg=insurance[,2], stationary=TRUE)
auto.arima(insurance[1:40,1], xreg=insurance[1:40,2], stationary=TRUE)
节目nrow(insurance)
有 40 行,所以我认为insurance[,1]
与 相同insurance[1:40,1]
,第二列也类似。然而,第一种方式会导致“带有 ARIMA(3,0,0) 错误的回归”,而第二种方式会导致“带有 ARIMA(1,0,2) 错误的回归”。
为什么这些看似等效的调用会导致不同的选定模型?
解决方案
请注意,insurance[,1]
有标签,insurance[1:40,1]
没有标签。如果你通过as.numeric(insurance[,1])
了,你实际上会收到“ARIMA(1,0,2)”。xreg=insurance[,2]
所以我敢打赌,这与第一个参数是否有标签有关......另外请注意,它们是否xreg=insurance[1:40,2]
都可以工作并不重要
推荐阅读
- automation - 如何使用 VBS 捕获命令窗口的输出并通过播放的声音通知用户?
- preview - 使用 azure Form Recognizer api v2.1 通过 REST 训练模型时提供自定义模型名称
- mysql - MySql查询不同的条件
- php - 从 MySQL 填充数据表中的数据:Php Ajax
- linux - 如何更新 Argo CLI?
- javascript - e.preventDefault() 在 100% 的情况下不起作用
- pyspark - 如何在 json 文件可能具有不同数据大小的 spark 中正确读取 dynamodb json 数据(dynamodb 从 s3 导出的数据)
- python-3.x - 使用 k-means 和 Word2Vec 预测新数据点的集群
- c++ - 未找到入口点 - VS2019 OpenCV C++
- r - 连接两个动作按钮,在闪亮的仪表板中显示相同的 tabItem