I fitted model by function auto.arima()
, then i tried to fit again by function Arima()
with same model, but i got different results.
By auto.arima()
:
> a<-c(90,88,96,110,105,128,119,117,155,135,138,127,156,168,145,160,180,175,189,166,184)
> chuoi<-ts(a,frequency=1,start=c(1990))
> auto.arima(chuoi)
Series: chuoi
ARIMA(2,1,0) with drift
Coefficients:
ar1 ar2 drift
-0.7075 -0.4648 4.7897
s.e. 0.1930 0.1972 1.3689
sigma^2 estimated as 163.1: log likelihood=-79.7
AIC=167.39 AICc=170.06 BIC=171.38
By Arima()
with same model, used all method "CSS-ML","ML" and "CSS":
> fit210<-Arima(chuoi,c(2,1,0),method="ML")
> fit210
Series: chuoi
ARIMA(2,1,0)
Coefficients:
ar1 ar2
-0.4670 -0.1928
s.e. 0.2162 0.2201
sigma^2 estimated as 244.2: log likelihood=-83.48
AIC=172.96 AICc=174.46 BIC=175.95
> fit210<-Arima(chuoi,c(2,1,0),method="CSS")
> fit210
Series: chuoi
ARIMA(2,1,0)
Coefficients:
ar1 ar2
-0.4876 -0.2111
s.e. 0.2196 0.2304
sigma^2 estimated as 268.3: part log likelihood=-84.3
> fit210<-Arima(chuoi,c(2,1,0),method="CSS-ML")
> fit210
Series: chuoi
ARIMA(2,1,0)
Coefficients:
ar1 ar2
-0.4671 -0.1928
s.e. 0.2162 0.2201
sigma^2 estimated as 244.2: log likelihood=-83.48
AIC=172.96 AICc=174.46 BIC=175.95
Obviously I got different coefficients ar(1), ar(2). Then, how function auto.arima()
calculated coefficients ar(1), ar(2)?
Your first model includes drift, you need to run it with
Arima(chuoi,c(2,1,0),include.drift = TRUE)
These two are the same:
auto.arima(chuoi)
Arima(chuoi,c(2,1,0),include.drift = TRUE) # default model, but with drift
Output:
> auto.arima(chuoi)
Series: chuoi
ARIMA(2,1,0) with drift
Coefficients:
ar1 ar2 drift
-0.7075 -0.4648 4.7897
s.e. 0.1930 0.1972 1.3689
sigma^2 estimated as 163.1: log likelihood=-79.7
AIC=167.39 AICc=170.06 BIC=171.38
> Arima(chuoi,c(2,1,0),include.drift = T)
Series: chuoi
ARIMA(2,1,0) with drift
Coefficients:
ar1 ar2 drift
-0.7075 -0.4648 4.7897
s.e. 0.1930 0.1972 1.3689
sigma^2 estimated as 163.1: log likelihood=-79.7
AIC=167.39 AICc=170.06 BIC=171.38
>