我的数据是一个时间序列。
y <- ts(datafile[,"y"], start=1960, frequency=4, end=2010)
我想在我的预测 ARIMA 模型中包含季度虚拟变量。那可能吗?如果是这样,它的命令是什么?我似乎找不到一个允许我将 ARIMA 模型与季度虚拟变量合并的模型。
所以我的 ARIMA 模型是:
fit_y <- arima(y, order=c(2,1,2), method="ML")
我知道如何将季节性 AR 放入模型中:
fit_y <- arima(y, order=c(2,1,2), seasonal=list(order=c(0,1,1), period=4), method="ML")
有没有办法包含季度虚拟变量?我已经通过 excel手动创建了虚拟变量,并将它们命名为 Q1、Q2、Q3、Q4,具有以下规范,以便 R 将它们作为时间序列变量读取:
Q1 <- ts(datafile[,"Q1"], start=1960, frequency=4, end=2010)
Q2 <- ts(datafile[,"Q2"], start=1960, frequency=4, end=2010)
Q3 <- ts(datafile[,"Q3"], start=1960, frequency=4, end=2010)
Q4 <- ts(datafile[,"Q4"], start=1960, frequency=4, end=2010)
您可以通过选项 xreg 将虚拟变量添加到 arima 模型arima
。
y <- ts(datafile[,"y"], start=1960, frequency=4)
Q1 <- ts(rep(c(1,0,0,0),44), start=1960, frequency=4)
Q2 <- ts(rep(c(0,1,0,0),44), start=1960, frequency=4)
Q3 <- ts(rep(c(0,0,1,0),44), start=1960, frequency=4)
xreg <- cbind(Q1,Q2,Q3)
fit_y <- arima(y, order=c(2,1,2), method = "ML", xreg = xreg)
请注意,(i)我没有添加 Q4,以避免出现虚拟陷阱(参见关于 dummy trap 的示例问题),以及 (ii) 您可以在 R 中轻松生成这些 Q1、Q2 和 Q3。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句