使用动态ARIMA预测未来

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用动态ARIMA预测未来相关的知识,希望对你有一定的参考价值。

假设我正在尝试使用动态ARIMA回归预测未来四个月的变量y。我提前知道了四个月的xreg变量。我不确定forecast函数如何进行预测,例如我可以使用缺少的y值来喂养它,并且如果仅将这几个月的xreg喂养,它将自动假设我正在尝试预测训练期之后的四个月?

下面的代码对预测未来四个月有意义吗?

library(dplyr)
library(fable)
library(tsibble)

set.seed(1)
r <- rnorm(36)
r2 <- rnorm(4)
x <- data.frame(index = yearmonth(seq.Date(as.Date("2017-01-01"),
                                           as.Date("2020-04-01"),
                                           "1 month")),
                y = cumprod(c(r, rep(NA, 4))),
                a = c(1.8 * r + rnorm(36), 1.8 * r2 + rnorm(4)),
                b = c(0.5 * r + rnorm(36), 1.5 * r2 + rnorm(4))) %>% 
  as_tsibble()


a1 <- x %>% 
  model(ARIMA(y ~ a + b))

a1 %>% forecast(x[37:40, ])
答案

否,预测功能将假设您要预测训练数据之后的月份。如果您的训练数据以缺少的观察结果结尾,则仅表示它是根据最后一个可用观察结果进行预测,一直到缺失的时期,再到训练数据之后的某个时期。

这里有一些代码可以执行您想要的操作。

x %>%
  filter(index <= yearmonth("2019 Dec")) %>%
  model(ARIMA(y ~ a + b)) %>%
  forecast(new_data = filter(x, index > yearmonth("2019 Dec")))

以上是关于使用动态ARIMA预测未来的主要内容,如果未能解决你的问题,请参考以下文章

R语言使用ARIMA模型预测股票收益

时间序列建模预测之中国未来GDP预测

滚动率预测模型是不是与 ARIMA 相同

我如何在 R 中为多个产品做自动 arima?

earch模型结果怎么看

R语言时间序列和ARIMA模型预测拖拉机销售的制造案例研究