如何循环Arima

时间:2017-01-09 02:40:42

标签: r loops model lapply autoregressive-models

我有一个关于使用R studio在多个时间序列中进行Arima测试的问题。 例如,我有三个客户,在4个时期内有三个时间序列。

客户端1客户端2客户端3

1 3 7

2 5 3

4 3 1

5 8 9

现在我想预测5/8/9之后的下一个时期。我知道如何使用Arima逐一预测时间序列,但实际上我有很多客户,这将花费太多时间。你可以教我如何做一个循环或使用lapply等来让事情变得更容易吗?

另外,在选择Arima的顺序时,我只知道使用Ident生成ACF和PACF的数字来告诉MA和AR的顺序,这对于大量的时间序列不起作用 - 我觉得不明智绘制数百个数字。你有什么好建议告诉Arima的命令吗?谢谢!

1 个答案:

答案 0 :(得分:0)

apply 可以帮助您将相同的功能应用于每一列(如果您将每列作为一个时间序列)。请了解如何使用它,互联网上有很多例子。

如果您有很多时间序列,并且想要避免手动工作, auto.arima 应该会派上用场。如果您对结果不满意:

  1. 首先尝试查找一般规则。也就是说,如果您知道每个时间序列都是季节性的(具有相同的季节长度),那么您就知道所有人都需要季节差异。关于长期趋势可以说同样的事情。这些推论也可以通过算法进行。

  2. 无论1是否适用,为了确定参数的最佳值,您必须编写用于手动确定AR和MA参数的逻辑。手动逻辑越简单,编码就越容易。一个简单的经验法则是保持AR + MA = 1,如果ACF逐渐下降则选择AR,如果快速下降则选择MA。什么是快速的,什么是渐进的只需要你的代码决定。