首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >预测包中的simulate.Arima函数

预测包中的simulate.Arima函数
EN

Stack Overflow用户
提问于 2013-01-07 20:17:31
回答 2查看 4.8K关注 0票数 2

我正在使用软件包forecast进行季节性时间序列模拟,我有两个问题:

1)我不太明白“未来”这个选项的含义和用途。默认情况下,它被设置为TRUE,我认为如果我想预测序列的未来值,它应该是真的,但是我不明白用future=FALSE模拟有什么用。

2) simulate.Arima函数基本上是对传统arima.sim函数的改进。但是,在arima.sim中,可以使用innov参数为函数提供一些用户定义的创新进程,而使用simulate.Arima则无法做到这一点。我错过了什么吗?如果没有,如果Hyndman先生阅读了这篇文章,是否可以在未来的版本中添加这样的选项?目前,我想我会得到源代码,并尝试自己修改代码。

谢谢,祝你有愉快的一天。

EN

回答 2

Stack Overflow用户

发布于 2013-01-08 07:25:10

  1. 根据帮助文件,future的意思是“生成与object中的数据相关且有条件的样本路径。”因此,如果为future=TRUE,模拟观测是以历史观测为条件的。换句话说,它们是时间序列未来可能的样本路径。但如果为future=FALSE,则历史数据将被忽略,并且模拟是与原始数据无关的时间序列模型的可能实现。
  2. I将在https://github.com/robjhyndman/forecast/issues?state=open的功能请求列表中添加允许用户指定的创新的建议。同时,这是一个非常简单的修改。只需找到对rnorm的调用并替换它。
票数 5
EN

Stack Overflow用户

发布于 2013-01-07 23:28:01

当您想要检查模型是否适合您的数据时,将future选项设置为FALSE非常有用。例如,在下图中,模型拟合为红色,而实际数据为黑色。

代码语言:javascript
复制
library(forecast)
fit <- Arima(USAccDeaths)
plot(simulate(fit,future=FALSE),col='red')
lines(c(USAccDeaths))

更有趣的是了解这两者之间的区别:

代码语言:javascript
复制
plot(simulate(fit,future=FALSE)-c(USAccDeaths))

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

https://stackoverflow.com/questions/14195782

复制
相关文章

相似问题

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