我将下面的模型与我的时间序列数据相符。 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)
此时我正在试图弄清楚如何预测1月份的14个值(M1=1
)。
所以当我在R中使用预测函数时,我想我需要在newxreg部分中指定我想要M1=1
和M2,...,M12=0
进行预测 - 是否正确?
我玩过代码,但我无法使用它,我无法在线找到关于预测公式的newxreg部分的非常详细的信息。
任何人都可以向我解释一下如何在一个月份获得预测,比如一月份吗? 我如何在预测函数的newxreg部分注意到这一点?
非常感谢提前!
答案 0 :(得分:6)
我终于找到了出路并想发布它 - 以防它帮助其他人。 所以基本上,newxreg应该是一个矩阵,其中包含您想要预测的回归量的值。 所以在我的情况下,我的回归量都是1或0(编码变量)来指定特定月份。 所以我做的是创建了一个0和1的矩阵作为我的newxreg。 我做的是我定义了一个矩阵mx,然后在预测函数中我设置了newxreg = mx。我确保mx的行数> = n.ahead的行数。
pred&lt; - predict(fit,n.ahead = n,newxreg = mx)
希望这对其他人也有帮助!