求问连老师、黄老师和其他懂的小伙伴们,为什么我做安慰剂检验总是显示(0 real changes made)呢?
我的样本中有105的ID,743个t(因为日度数据有gap,这是我自动生成的日期虚拟变量),是一个典型的长面板数据,而且做的也是多时点的DID回归。在进行安慰剂检验时,我参考的是连老师的帖子,代码如下:
*抽样过程
forvalues i=1/500{
use D:\11月论文\安慰剂检验专用.dta, clear
xtset ID t //平衡面板数据
sample 30, count //随机抽取30个债券样本
keep ID t //得到所抽取样本的id编号
save matchID.dta, replace //另存id编号数据
merge 1:m ID t using D:\11月论文\安慰剂检验专用.dta //与原数据匹配
gen treat = (_merge == 3) //将所抽取样本赋值为1,其余为0,得到债券处理变量
gen newtime = (date >= td(01jun2013)) //生成时间处理变量
gen did = treat*newtime
xtreg R did duration turn lCap markettype t, fe
*将回归结果赋值到对应矩阵的对应位置
mat b[`i',1] = _b[did]
mat se[`i',1] = _se[did]
mat p[`i',1] = 2*ttail(e(df_r), abs(_b[did]/_se[did]))
}
跑出来的结果是一堆的(0 real changes made),而且最终只剩下500个数据,请问应该怎么调整呢?谢谢!!!