【发布时间】:2014-12-19 16:25:26
【问题描述】:
我一直在使用 EViews statconn DCOM 接口通过 R 的预测包中的 nsdiffs(test=c("ch")) 函数从 FRED 循环大量系列,以检查其中有多少百分比需要季节性差异化。然而,经过 26,000+ 系列的试运行,OCSB 测试返回 1,245 个阳性结果(输出 = 1),但 Canova Hansen 测试返回零,这让我怀疑我做错了什么,但不能不知道到底是什么
for !k = 1 to !keriesnumber
xput(rtype=ts) sertest!k 'pass the series from EViews to R
xrun library(forecast) 'call necessary forecast library
xrun sertest!k <- ts(sertest!k, start=c(1990, 1), end=c(2014, 6), frequency=12) 'specify timeseries properties
xrun kpss_!k<- ndiffs(sertest!k) 'kpss test
xrun ch_!k<-nsdiffs(sertest!k,m=frequency(sertest!k),test=c("ch")) 'ch test
xrun ocsb_!k<-nsdiffs(sertest!k,m=frequency(sertest!k),test=c("ocsb")) 'ocsb test
xget kpss_!k 'return the three output integers back to eviews
xget ch_!k
xget ocsb_!k
!count=!count+1
kpss_vector(!count)=kpss_!k 'store the results in a vector
ch_vector(!count)=ch_!k
ocsb_vector(!count)=ocsb_!k
next
我是否在 nsdiffs 命令中错误地指定了频率或其他内容?如果是这样,为什么(我认为正确?)毫无问题地进行 OCSB:~1/26 似乎是合理的次数,不拒绝此类数据集上的空值。我希望作为一个非本地 R 用户,我只是忘记调用一个库或一些简单的东西,并且某种灵魂可以识别这个问题:)。否则,我测试的 26000 个宏观经济序列中没有一个需要在 CH 测试下进行季节性差异,这似乎很奇怪。我还使用原始 CH 论文 (http://www.ssc.wisc.edu/~bhansen/progs/jbes_95.html) 中的一些数据尝试了类似的例程,但仍然无法找到神圣的输出 =1。
【问题讨论】:
-
我已经扩展了我原来的答案。
标签: r time-series forecasting