2013-09-28 3 views
0

Я ве получил резкое различие между АИКАМИ для ара (1) и арима (1,0,0):Akaike критерий: ар() против ARIMA() в R

> a <- ar(rn, lags=1) 
> a$aic 
0   1   2   3   4   5   6   7 ...   
6.0215169 1.2184962 2.0020937 1.1786418 0.9002231 0.0000000 1.1728207 ... 

> b<-arima(rn, order=c(1,0,0)) 
> b$aic 
[1] -6840.676 

регрессия коэфф является довольно близко: -0.068 для ar и -0.077 для аримы. Будем очень благодарны за любые комментарии. Alec

ответ

2

В помощи ара() вы можете прочитать:

AIC Различия в АИК между каждой моделью и лучше облегающими моделями.

Итак, он показывает вам aic = 0 для выбранной («лучшей») модели, потому что разница равна нулю.

arima() показывает, что вы являетесь фактическим aic.

Например, рассмотрим следующий смоделированный набор данных:

set.seed(11) 
d<-rnorm(100) 

А затем оценить А.Р. АРМА модели:

ar.m<-ar(d,demean=FALSE) 
ar.m 
Call: 
ar(x = d) 

Coefficients: 
     1 
-0.1847 

Order selected 1 sigma^2 estimated as 0.816 

Вы видите, что ар выбран один лаг. Таким образом, оценить ту же модель с ARIMA:

arima.m<-arima(d,order=c(1,0,0)) 
arima.m 
Call: 
arima(x = d, order = c(1, 0, 0)) 

Coefficients: 
      ar1 intercept 
     -0.1838 -0.1220 
s.e. 0.0980  0.0756 

sigma^2 estimated as 0.7995: log likelihood = -130.72, aic = 267.45  

Вы видите сейчас, что АИК из arima.m является 267,45

Теперь AIC вычисляется с использованием невязки ar.m и формулу для AIC:

ar.m.res<-ar.m$resid 
rss.ar.m<-sum(ar.m.res[-1]^2) 
l.ar.m<-1/(2*pi*rss.ar.m/100)^50*exp(-50) 
2*2-2*log(l.ar.m) 

267.5334 

Это почти то же самое ...

Смежные вопросы