楼主: 小蜂蜂123321
988 6

[面板数据求助] 为啥我做双重差分模型,安慰剂检验图是这个鬼样子的,求求大神看看 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

大专生

40%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
115 点
帖子
10
精华
0
在线时间
86 小时
注册时间
2021-5-24
最后登录
2025-7-7

楼主
小蜂蜂123321 发表于 2024-6-20 11:05:26 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
大家帮我看看,求求了,要崩溃了,每次画出来的安慰剂检验图都是这个样子
二维码

扫码加我 拉你入群

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

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

关键词:双重差分模型 双重差分 安慰剂

安慰剂检验.png (53.3 KB)

安慰剂检验.png

沙发
heric221 在职认证  发表于 2024-6-20 12:20:13
这应该是表明,翻过一座山,还有一座山,一山更比一山高
至少应提供部分代码,这样问问题,应该很难得到答案。
另外,纵轴为p值,这个是不是错了?

藤椅
小蜂蜂123321 发表于 2024-6-20 14:55:01
heric221 发表于 2024-6-20 12:20
这应该是表明,翻过一座山,还有一座山,一山更比一山高
至少应提供部分代码,这样问问题,应该很 ...
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 "badword.dta" , clear
        xtset id year
        keep if year==2016
        sample 1727, count
        keep id
        save "atchcity.dta",replace
        merge 1:m id using "badword.dta"
        gen groupnew=(_merge==3) //生成伪处理组的虚拟变量
        save "matchcity`i'.dta",replace
               
        *伪政策虚拟变量
        use "badword.dta",clear
        bsample 1, strata(id)
        keep year
        save "matchyear.dta", replace
        mkmat year, matrix(sampleyear)
        use "matchcity`i'.dta",replace
        xtset id year
        gen time = 0
        foreach j of numlist 1/2,624 {
                replace time = 1 if (id == `j' & year >= sampleyear[`j',1])
        }       
        gen  did=time*groupnew
        global xlist  "profit_ratio lev overhead profit_stab lnemploy lnage lnscale 流动比率 lnpay"       
        xtreg lnbadword 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"
}

板凳
小蜂蜂123321 发表于 2024-6-20 14:56:00
heric221 发表于 2024-6-20 12:20
这应该是表明,翻过一座山,还有一座山,一山更比一山高
至少应提供部分代码,这样问问题,应该很 ...
我将安慰剂代码给您了,实在是要命,我都晕了,这么长的代码,实在找不到哪里错误了

报纸
917968079 发表于 2024-6-21 18:54:12
didplacebo,用这个命令试试

地板
heric221 在职认证  发表于 2024-7-5 23:43:30
小蜂蜂123321 发表于 2024-6-20 14:55
clear
set matsize 5000
mat b = J(500,1,0)
这代码和发表在《中国工业经济》上的一篇论文相似,处理组随机,时间随机,和真实的处理组、控制组分布差得有点远,看不懂真实的检验结果是什么?
可以参考:https://zhuanlan.zhihu.com/p/569836319,或者试试指令didplacebo

7
金牌讲师皮皮牛 发表于 2024-7-14 21:59:30
heric221 发表于 2024-7-5 23:43
这代码和发表在《中国工业经济》上的一篇论文相似,处理组随机,时间随机,和真实的处理组、控制组分布差 ...
太牛逼了哥,我就用的你推荐的这个网址的方法。成了!!!!!!!!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-2-7 12:43