全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
18367 18
2021-05-17

Stata实证:安慰剂检验的代码实现

安慰剂检验常作为稳健性检验的内容,在DID模型中比较常见。安慰剂检验最早来自医学方法,在医学实验中,假如要测试某种新药的效果,为了排除“霍桑效应”,即排除参与实验的人员知道自己在实验组或者对照组而产生的心理差异而导致的对药效结果的影响,实验过程中会让所有参与实验人员服用“新药物”,当然,实验组服用的真正的“新药物”,而对照组的人员服用的是不会产生任何影响的“假药物”。

在计量实证中,也采用了这种思想,如,在因果识别中,为了识别某种政策或者冲击的影响,随机指定对照组与实验组,然后观测主要变量(交互项)的系数的分布情况,如果其核密度曲线为均值接近0的近似正态分布的曲线,则认为原有结果是稳健的,而不是随机的结果。换句话说,如果随机假设实验组与对照组,得到的结果仍与原有结果一致,不是证明,其实不是研究的政策或者冲击的影响吗?

任胜钢,郑晶晶,刘东华,陈晓红. 排污权交易机制是否提高了企业全要素生产率

———来自中国上市公司的证据. 中国工业经济 201955-23一文中就有安慰剂检验。其结果如下图所示:(图略,见下方word文件)

综上,我们可以了解到安慰剂检验的思想,就是打乱实验组与对照组,因此,本文将采取案例教学的方式,教大家使用stata实现安慰剂检验。


案例:如下表所示,案例文件panels.dta包含了30个省市的2004-2017年共计14年的面板数据,其中y为被解释变量,x为主要的解释变量,x1-x7为控制变量。

(1)我们将采用面板固定效应模型对模型进行估计,然后进行安慰剂检验,为了简化过程,我们将只做省份固定效应的回归,而略去加入时间固定效应的双向固定效应的回归与安慰剂检验(本质上依然一样)可留作读者自行修改代码实现。主要实现方法是打乱主要的解释变量x再进行回归,重复以上步骤1000次,然后观察系数分布情况。


(2)我们将使用DID模型,再重复一次,为了保证DID交互项的显著性,我们将首先设定一个政策冲击,将政策冲击年份设定为2014年,并指定10个省市为实验组(id为3的倍数),并对受政策冲击的省份的y都加上2,其余为对照组,不做任何处理。首先,我们将回归展示基准结果,然后,我们将随机打乱实验组与对照组,重复以上步骤1000次,然后观察系数分布情况。(注,此处主要解释变量不再是x而是交互项系数)。

另外,注:若do文件发生乱码,使用Windows自带的记事本打开do文件,然后复制出其中代码粘贴至stata新建空白do文件即可。

stata安慰剂检验实践.rar
大小:(1.26 MB)

只需: 5 个论坛币  马上下载






二维码

扫码加我 拉你入群

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

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

全部回复
2021-5-17 16:06:09
冰清玉树 发表于 2021-5-17 15:53
Stata实证:安慰剂检验的代码实现安慰剂检验常作为稳健性检验的内容,在DID模型中比较常见。安慰剂检验最早 ...
欢迎在下方评论。
二维码

扫码加我 拉你入群

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

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

2021-6-8 00:10:39
已用其他账号购买压缩包
请问
replace Di=0
replace Di=1 if mod(random_id,3)==0
这个命令适用于其他政策实验组吗
我看您最开始生成的Di,就是根据能被3整除的id而生成的
但我的实验组是根据实际政策实施地而分的
谢谢您啦
二维码

扫码加我 拉你入群

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

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

2021-6-9 11:15:23
1640012986 发表于 2021-6-8 00:10
已用其他账号购买压缩包
请问
replace Di=0
        不一定适合,主要看你想让多少个id进入实验组。指定进入实验组的id的规则其实可以很多种,并不影响随机性,这里案例原定的就是id能被三整除的为实验组,所以为了简便,打乱后可以依旧采用原有规则,其实也可以使用新规则,只要保证随机即可。<br>
       如果你想根据自己实际的分组来,其实可以按原定的方式指定实验组,只要把实验组的id打乱即可。打乱实验组与对照组的思路有很多,目的无非是打乱实验组与对照组原有所对应的id分组关系。<br>
      这里的方法是依然按原有方法指定特定的id数字进入实验组,但是随机打乱各组的id。你也可以不用打乱原有id,但是打乱进入实验组id的数字。当然,也可以同时打乱id与进入实验组的id的数字。这些操作可以说本质上依旧是一样的,都会打乱原有的对应关系。<br>
    楼主采用打乱id的方式,是觉得这方法灵活性比较高。打乱id后,其实你可以按任意方式选择进入实验组id的规则。例如,本案例中,还可以指定id为1-10的进入实验组。假如你实际的情况,总体id有100个,需要指定15个id进入实验组,可以直接选择id为1-15的样本进入实验组,结果仍然是随机的。
二维码

扫码加我 拉你入群

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

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

2021-8-21 13:01:53
https://bbs.pinggu.org/thread-10721455-1-1.html这里改进了打乱实验组对照组的方法,感兴趣可以去看看。
二维码

扫码加我 拉你入群

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

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

2021-9-5 23:43:19
冰清玉树 发表于 2021-5-17 15:53
Stata实证:安慰剂检验的代码实现安慰剂检验常作为稳健性检验的内容,在DID模型中比较常见。安慰剂检验最早 ...
倾向得分匹配的安慰剂检验该如何操作呢
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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