用stata求股指收益率时命令如下:tsset date, gen r_sp500=ln(sp500)-ln(L.sp500), 结果出现3400个缺失值

我想为什么会这样,以及如何处理。我用Eviews时就没有这样的问题,而且Stata的结果比Eviews的结果高出很多,请高手指点。
time variable: date, 03 Jan 50 to 04 Mar 11, but with gaps
delta: 1 day

. gen r_sp500=ln(sp500)-ln(L.sp500)
(3400 missing values generated)

. sum r_sp500

Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
r_sp500 | 11992 .0004986 .0091824 -.0946951 .1024574

Eviews的结果如下
Observations 15391

Mean 0.000284
Median 0.000463
Maximum 0.109572
Minimum -0.228997
Std. Dev. 0.009716
Skewness -1.057990
Kurtosis 32.11851

Jarque-Bera 546614.7
Probability 0.000000
我以找到解决问题的方法了

stata里的obs有11992个,而Eviews的Observations有15391个,数据都不一样,统计结果怎么会一样?
软件不会有问题的,只能是你的方法有问题,再仔细检查一下吧追问

你没看到stata给出了3400 missing values generated信息吗?正是stata产生了3400个缺失值导致结果不一样?
其实我找到了原因,因为股市Sat,和Sun.休息,以及节假日休息,所以在给出tsset date命令是报告but with gaps。如何将非连续时间变量转成连续时间变量是关键?请指点!

追答

这个可以使用命令 tsfill 搞定

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-07
撒打发似的
相似回答