全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1162 0
2022-04-08
use "F:\实证数据\7.dta",clear
gen DID=TAX*TIME
order  Stkcd Accper PLACE TIME TAX DID   //TIME时间 TAX组别
xtset Stkcd Accper
global xlist "SIZE TOP LEV  TAT"
reghdfe CSR DID $xlist ,absorb(Stkcd Accper) vce(cluster Stkcd )
*****************安慰剂检验-虚构处理组
mat b = J(200,1,0)
mat se = J(200,1,0)
mat p = J(200,1,0)
forvalues i=1/200{
        use "F:\实证数据\7.dta", clear
        xtset Stkcd Accper  //面板数据声明
        keep if Accper==2017   //保留一期数据
        sample 2700, count   //随机抽取
        keep Stkcd  //得到所抽取样本的编号
        save match_id.dta, replace   //另存编号数据
        merge 1:m Stkcd  using "F:\实证数据\7.dta" //与原数据匹配
        gen treat = (_merge == 3) //将所抽取样本赋值为1,其余为0,得到政策分组虚拟变量
        gen period = (Accper >= 2018) //生成政策时间虚拟变量
        gen did = treat*period
        reghdfe CSR did $xlist ,absorb(Stkcd Accper) vce(cluster Stkcd )
        * 将回归结果赋值到对应矩阵的对应位置
        mat b[`i',1] = _b[did] //* 系数矩阵
        mat se[`i',1] = _se[did] //* 标准误矩阵

        * 计算P值并赋值于矩阵
        mat p[`i',1] = 2*ttail(e(df_r), abs(_b[did]/_se[did]))
}
代码是这样的,我检查了文件,发现match_id.sta里面的id是按照顺序排的,没有随机抽样,请问是哪里出了问题 运行结果

二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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