首页 > 解决方案 > 高级 ARIMA 模型

问题描述

我需要构建一个高级的 Arima 模型。对于所有高级 arima 模型,v1 的值是固定的,但 xreg 的值不同(包含 7 个数据列)。我需要为这 7 个回归提取平均残差。到目前为止,我已经想出了这段代码。

model <- data[c(2:8)]
AdvancedMAE <- function(model){
  p <- ncol(model)
  p1 <- Arima(data$v1,order=c(0,3,1),xreg=as.matrix(model))
  p2 <- data.frame(mean(abs(p1$residuals)))
  p2
  }
allvalue <- AdvancedMAE(model=model)

但我得到的结果是所有数据的平均值,而不是每 7 个循环回归的平均值。

标签: rarima

解决方案


下面的评论有点太长了。

首先,请始终提供具有代表性和最少的样本数据;如果您因隐私原因无法共享您的数据,请提供模拟数据。arima.sim使模拟特定 ARIMA 过程的数据变得非常容易。如果您提供随机样本数据,请不要忘记将固定随机种子与set.seed.

至于你的问题:

  1. 我不知道您所说的“高级华宇模型”是什么意思。您似乎适合带有​​外部回归器的基本 ARIMA(0, 3, 1) 模型。
  2. 你确定三个不同的程度是正确的吗?对您的数据一无所知(提供数据很重要的原因之一!),对我来说,一个d = 3过程会敲响警钟。很少有需要d > 2.
  3. “我需要为这 7 个回归提取平均残差”在您的模型中,您不执行 7 个回归。您使用(看起来像)7 个外部回归器执行单个回归。

推荐阅读