如何在ARIMA预测模型中指定newxreg?

3

我已经将下面的模型拟合到我的时间序列数据中。 xreg 包括一个从1到1000的时间向量和12个表示月份的指示变量(1或0)。 我处理的数据具有一些强烈的每周和每月季节性模式。

fit <- arima(x, order = c(3, 0, 0),
    seasonal = list(order = c(1, 0, 1), period = 7),   
    xreg = cbind(t, M1, M2, M3, M4, M5,
    M6, M7, M8, M9, M10, M11, M12), include.mean = FALSE,
    transform.pars = TRUE,
    fixed = NULL, init = NULL,
        method = c("CSS-ML", "ML", "CSS"),
        optim.method = "BFGS",
        optim.control = list(), kappa = 1e6)

目前我正在尝试找出如何预测一月份的14个值(M1=1)。

那么当我在 R 中使用 predict 函数时,我认为我需要在新的自变量部分指定想要预测的是 M1=1M2,...,M12=0 - 对吗?

我已经尝试过代码,但是无法使其正常工作,并且我也没有在在线上找到有关 predict 公式中新的自变量部分的详细信息。

有人能解释一下如何预测特定的月份,比如一月份吗?我需要在 predict 函数的新的自变量部分中如何说明呢?

非常感谢!

1个回答

6
我终于找到了一种解决方法,并想发布它 - 以防对其他人有帮助。所以基本上,newxreg应该是一个包含您要预测的回归器值的矩阵。所以在我的案例中,我的回归器都是1或0(编码变量),用于指定特定的月份。所以我创建了一个由0和1组成的矩阵来作为我的新newxreg。我定义了一个矩阵mx,然后在predict函数中设置newxreg=mx。我确保mx的行数>=n.ahead的行数。希望这对其他人也有帮助!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接