使用 AR 残差估计多个 OLS

Estimating multiple OLS with AR residuals

我是 R 中建模的新手,所以有点磕磕绊绊...

我在 Eviews 中有一个模型,我必须将其转换为 R 并进行进一步升级。 该模型是具有 AR(1) 残差的多重 OLS。 我是这样实现的

model1 <- lm(y ~ x1 + x2 + x3, data)
data$e <- dplyr:: lag(residuals(model1), 1)

model2 <- lm(y ~ x1 + x2 + x3 + e, data)

我的问题与此 thread 中的问题相同,我在意料之中:虽然参数估计相似,但它们的差异足以让我无法使用它。

我计划使用 stats 包中的 ARIMA,但问题是实现。如何在残差上做AR(1),其他变量照原样做?

如果我理解正确,您可以通过 xreg 参数为您的 arima 模型提供外部回归变量。

你没有提供样本数据,所以我没有什么可玩的,但你的模型应该转换成类似

的东西
model <- arima(data$y, xreg = as.matrix(data[, c("x1", "x2", "x3")]), order = c(1, 0, 0))

说明:第一个参数 data$y 包含您的时间序列数据。 xreg 包含您的外部回归量作为 matrix,每列包含与您的时间点一样多的该回归量的观察值。 order = c(1, 0, 0) 定义 AR(1) 模型。