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

标签 r time-series forecasting prediction

我已将以下模型拟合到我的时间序列数据中。 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=1M2,...,M12=0我的预测 - 正确吗? 我试过这些代码,但我无法让它工作,而且我无法在网上找到有关预测公式的 newxreg 部分的非常详细的信息。

任何人都可以向我解释如何获得某个特定月份(例如 1 月)的预测吗? 以及在预测函数的 newxreg 部分我需要如何注意?

非常感谢!

最佳答案

我终于找到了出路,想把它贴出来——以防它能帮助别人。 所以基本上,newxreg 应该是一个矩阵,其中包含您想要预测的回归变量的值。 所以在我的例子中,我的回归量都是 1 或 0(编码变量)来指定特定的月份。 所以我所做的是创建一个由 0 和 1 组成的矩阵用作我的 newxreg。 我所做的是定义一个矩阵 mx,然后在预测函数中设置 newxreg=mx。我确保 mx 的行数 >= n.ahead 的行数。

pred <- predict(fit,n.ahead=n, newxreg=mx)

希望这对其他人也有帮助!

关于r - 如何在ARIMA预测模型中指定newxreg?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16288375/

相关文章:

r - 在 R 中使用 tslm 预测时间序列

r - 取消列出时防止元素重命名

r - 用gsub替换字符串中的两个点

r - Affymetrix 自定义 CDF 段错误

r - 如何在R中对具有不同大小向量的时间序列数据进行聚类

r - 编辑 : FIXED -- Computational instability in R Forecast package?

r - 添加对角线来连接ggplot2中按组组织的配对数据点

python - 识别时间序列何时通过图表和表格中的阈值

python - 在 python 中绘制 YoY 价格相关性。 (绘制 Dataframe 行的相关性)

azure - 使用 Azure 机器学习的时间/预测系列