全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
3555 6
2012-02-13
在R软件中可采用eacf函数对ARMA(p,q)模型进行定阶,只要安装TSA包然后再加载即可。下面是一个给定数据样本采用ARMA定阶的结果:
eacf(x)
AR/MA
  0 1 2 3 4 5 6 7 8 9 10 11 12 13
0 x x x x x x o x o o x  x  x  x
1 x o o o x x o x o o x  x  x  o
2 x x o o x x o o o o x  o  x  o
3 x x x o x x o o o o x  o  x  o
4 x x x o o x o o o o o  o  o  x
5 x x x x x o o x x x o  o  o  o
6 x x x x x x o o x o x  o  o  o
7 x x x x x x x o o o x  o  o  o
阶数可初步确定为ARMA(1,1)。

如果需要对FARIMA(p,d,q)模型进行定阶的话,在R中是不是也有类似快捷的办法?感觉应该会有的,不过不熟悉。望高手指教。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-2-13 14:57:02
目前想到的一个比较笨的办法是用fracdiff命令得到不同p、q组合下的参数估计结果,从中提取AIC或者BIC值,取最小的值即可确定p、q阶数。譬如去p=1,q=2时对应结果为:

Call:
  fracdiff(x = x, nar = 1, nma = 2, h = 1e-06)

Coefficients:
          d          ar         ma1         ma2
0.35299256  0.91870294  1.06575744 -0.08379752
sigma[eps] = 0.8982028
a list with components:
[1] "log.likelihood"  "n"               "msg"             "d"              
[5] "ar"              "ma"              "covariance.dpq"  "fnormMin"      
[9] "sigma"           "stderror.dpq"    "correlation.dpq" "h"              
[13] "d.tol"           "M"               "hessian.dpq"     "length.w"      
[17] "call"  

想问下这个AIC值或者BIC值应该如何提取呢?         

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-2-13 15:17:05
用S-PLUS试了下,结果如下:
y=FARIMA(x,p.range=c(0,2),q.range=c(0,2),mmax=0)
结果:
p = 0  q = 0
p = 0  q = 1
p = 0  q = 2
p = 1  q = 0
p = 1  q = 1
p = 1  q = 2
p = 2  q = 0
p = 2  q = 1
p = 2  q = 2

summary(y)
结果:
Call:
FARIMA(x = x, p.range = c(0, 2), q.range = c(0, 2), mmax = 0)

Coefficients:
         Value Std. Error  t value Pr(>|t|)
    d  -0.0848   0.0234    -3.6194   0.0003
AR(1)   0.7257   0.0189    38.3355   0.0000
MA(1)   0.4391   0.0087    50.4501   0.0000

Information Criteria:
log-likelihood       BIC
-24887.50       49804.55

Residual scale estimate: 0.8981

                   total residual
Degree of freedom: 18978    18974

BIC of all models estimated:
       q=0        q=1       q=2
p=0  49956.33   49955.87   49917.32
p=1  49953.95   49804.55   49813.03
p=2  49887.75   49814.71   49807.89

模型定阶为p=1、q=1,是根据BIC准则确定的。但感觉其对参数d的估计不好,d=-0.0848,d应该在0~0.5的范围内才合适。用R计算相同阶数时对应的d值为0.2481836。与S-PLUS估计的参数存在明显差别。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-2-13 15:24:58
欢迎大家一起探讨一下这个问题啊!数据文件如下。
附件列表

REQ.txt

大小:204.51 KB

 马上下载

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-2-14 18:34:11
你的问题很好,我也学习学习
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-2-16 20:46:33
论坛里有没有做过FARIMA参数辨识和估计的 怎么同样的数据系列分别用S-PLUS和R做出来的估计结果完全不同呢??
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群