R auto.arima()vs arima()使用相同的模型给出不同的结果

时间:2018-05-03 21:32:23

标签: r time-series

我有一个关于这个时间序列分析的问题,平均每月气温(Deg.F)诺丁汉城堡1920-1939:

https://datamarket.com/data/set/22li/mean-monthly-air-temperature-deg-f-nottingham-castle-1920-1939#!ds=22li&display=line

我跑的时候

auto.arima(x.t,trace=True) 

它给了我“ARIMA(5,0,1)具有非零均值”和“AIC = 1198.42”作为最低AIC。但是,当我手动输入arima模型时,我遇到了一个甚至更低的aic模型。

arima(x = x.t, order = c(3, 1, 3)) 

aic = 1136.95。 当我运行函数auto.arima(x.t,trace = TRUE,d=1),它给了我ARIMA(2,1,2),AIC为1221.413。虽然漂移的ARIMA(3,1,3)给出1209.947,ARIMA(3,1,3)给出1207.859。

我真的很困惑。我认为auto.arima应该自动建议您的差异数量。为什么auto.arima AIC与arima AIC不同,而它们具有相同的型号?

1 个答案:

答案 0 :(得分:0)

您正在安装两个不同的 ARIMA模型。显然,ARIMA(5,0,1)模型与ARIMA(3,1,3)模型不同。在前者中,您模拟p=5时间滞后而没有差异,而在后者中,您认为p=3时间滞后于d=1差分度。此外,您的模型的MA组件也有所不同:q=1q=3

不同的模型显然会为您提供不同的质量指标(即不同的AIC)。