我正在使用“Arima”为“Airpassengers”建立一个MA(1)模型,代码如下:
test3=Arima(AirPassengers,c(0,0,1))
结果是
Series: AirPassengers
ARIMA(0,0,1) with non-zero mean
Coefficients:
ma1 mean
0.9642 280.6464
s.e. 0.0214 10.5788
sigma^2 estimated as 4265: log likelihood=-806.43
AIC=1618.86 AICc=1619.03 BIC=1627.77
我想知道最终的公式,哪一个是正确的:
(1)Yt = 280.6464 + et + 0.9642et-1
(2)Yt = 280.6464 + et-0.9642et-1
答案 0 :(得分:0)
为了详细说明我上面的评论,我们可以使用MA(1)模型方程x_t = mean + w_t + ma1 * w_{t-1}
中的模型系数和残差来明确地重建源数据。在这样做时,我们可以确认添加剂术语的正确符号。
将MA(1)模型拟合到数据AirPassengers
:
fit <- arima(AirPassengers, c(0,0,1));
使用fit$residuals
中存储的估算模型系数和残差重建数据。
# Reconstruct the data from the model coefficients and residuals
# x_t = mean + w_t + ma1 * w_{t-1}
x.model <- coef(fit)["intercept"] + fit$residuals + coef(fit)["ma1"] * stats::lag(fit$residuals, k = -1)
我们绘制原始数据AirPassengers
和重建数据。由于两个时间序列数据都会重叠,因此我们将重建数据垂直移位shift = 50
。如果设置shift = 0
,则可以确认它们确实重叠。
shift <- 50;
ts.plot(AirPassengers, x.model + shift, gpars=list(xlab = "Date", col = c(1, 2)))
因此我们得出结论,MA(1)模型方程确实是x_t = mean + w_t + ma1 * w_{t-1}
,而不是x_t = mean + w_t - ma1 * w_{t-1}
。