欢迎光临散文网 会员登陆 & 注册

多时点did安慰剂检验代码

2023-08-20 10:27 作者:Kiren_r  | 我要投稿

************************多时点did安慰剂检验*******

clear

set matsize 5000

mat b = J(500,1,0)

mat se = J(500,1,0)

mat p = J(500,1,0)


forvalues i=1/500{

use "did.dta" , clear 

xtset stkcd year 

keep if year==2004

sample 93, count

keep city

save "atchcity.dta",replace

merge 1:m city using "did.dta"

gen groupnew=(_merge==3) //生成伪处理组的虚拟变量

save "matchcity`i'.dta",replace


*伪政策虚拟变量

use "数据.dta",clear 

bsample 1, strata(city)

keep year

save "matchyear.dta", replace

mkmat year, matrix(sampleyear)

use "matchcity`i'.dta",replace

xtset city year

gen time = 0

foreach j of numlist 1/280 {

replace time = 1 if (city == `j' & year >= sampleyear[`j',1])

}

gen  did=time*groupnew

global xlist  "lnagdp indust_stru finance ainternet market "

xtreg entre_activation did  $xlist  i.year, fe robust


mat b[`i',1] = _b[did]

mat se[`i',1] = _se[did]

scalar df_r = e(N) - e(df_m) -1

mat p[`i',1] = 2*ttail(df_r,abs(_b[did]/_se[did]))

}

svmat b, names(coef)

svmat se, names(se)

svmat p, names(pvalue)


drop if pvalue1 == .

label var pvalue1 p值

label var coef1 估计系数


 twoway (scatter pvalue1 coef1,  xlabel(-0.2(0.05)0.4, grid) yline(0.1,lp(shortdash)) xline(0.2997,lp(shortdash)) xtitle(估计系数) ytitle(p值) msymbol(smcircle_hollow) mcolor(grey) legend(off)) (kdensity coef1, title(安慰剂检验))


 *-删除临时文件

forvalue i=1/500{

    erase  "matchcity`i'.dta"

}


多时点did安慰剂检验代码的评论 (共 条)

分享到微博请遵守国家法律