首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >R中auto.arima的训练数据集

R中auto.arima的训练数据集
EN

Stack Overflow用户
提问于 2015-09-29 14:59:54
回答 1查看 3K关注 0票数 0

我有大约10000个时间序列。

我想使用auto.arima函数http://www.inside-r.org/packages/cran/forecast/docs/auto.arima

我想测试我的auto.arima模型对于10000时间序列的准确性。我正在推迟20%的数据点(如果你看到40个样本中的8个),然后让auto.arima预测。然后,我可以比较生成的8个值和实际的8个值。

但是,在ARIMA模型中是否有一种正式的方法来检验精度呢?我的方法是correcT吗?

代码语言:javascript
运行
复制
y=auto.arima(x)
plot(forecast(y,h=8))

样本时间序列1

代码语言:javascript
运行
复制
0.0003748,0.0003929,0.0003653,0.0003557,0.0004463,0.000349,0.0003099,0.0003395,0.0003157,0.0002871,0.0002604,0.0002422,0.0001917,0.0002117,0.0002689

时间序列2

代码语言:javascript
运行
复制
0.0003977,0.0003481,0.0002413,0.0002069,0.0002127,0.0002108,0.0002003,0.0002174,0.0002098,0.0002069,0.0001955,0.0001926,0.0002108,0.0002146,0.0002079
EN

回答 1

Stack Overflow用户

发布于 2015-09-29 22:25:14

在我看来,你的Q是关于比较预测精度的不同指标,而不仅仅是auto.arima()forecast()的具体使用。如果是这样的话,那么就有许多度量可以使用。有关概述,请参见

accuracy

它们中的每一个都有其支持者和反对者;例如,见本文:

http://robjhyndman.com/papers/mase.pdf

不管你使用的是什么精确的度量,你仍然需要能够证明为什么你要隐瞒20%的数据用于预测。

但是,如果您对不同的模型形式感兴趣,那么您也有一些选项。例如,正如评论中所建议的,

  1. 使用arima() (或某些等价的)将相同的单变量模型(先验地)拟合到每个时间序列;
  2. 使用auto.arima()对每个时间序列拟合(可能)不同的单变量模型;或
  3. 适合于所有时间序列的多变量模型。

如果您感兴趣的是#3,我建议您在这里使用MARSS pkg:

https://cran.r-project.org/web/packages/MARSS/index.html

以及这里的用户指南:

https://cran.r-project.org/web/packages/MARSS/vignettes/UserGuide.pdf

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

https://stackoverflow.com/questions/32847384

复制
相关文章

相似问题

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