psm-did, did, rdd, stata程序百科全书式的宝典

上传人:bin****86 文档编号:57500181 上传时间:2018-10-22 格式:DOCX 页数:7 大小:17.65KB
返回 下载 相关 举报
psm-did, did, rdd, stata程序百科全书式的宝典_第1页
第1页 / 共7页
psm-did, did, rdd, stata程序百科全书式的宝典_第2页
第2页 / 共7页
psm-did, did, rdd, stata程序百科全书式的宝典_第3页
第3页 / 共7页
psm-did, did, rdd, stata程序百科全书式的宝典_第4页
第4页 / 共7页
psm-did, did, rdd, stata程序百科全书式的宝典_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《psm-did, did, rdd, stata程序百科全书式的宝典》由会员分享,可在线阅读,更多相关《psm-did, did, rdd, stata程序百科全书式的宝典(7页珍藏版)》请在金锄头文库上搜索。

1、PSM-DID,PSM-DID, DID,DID, RDD,RDD, StataStata 程序百科全程序百科全 书式的宝典书式的宝典邮箱:econometrics666Copyright计量经济圈(ID: econometrics666)PSM-DID,DID,RDD 这些比较热门的计量方法的操作典籍,有需要 do 文件的进入计量经济圈社群直接提取。_webuse nlswork /使用系统自带数据库xtset idcode year, delta(1) /设置面板xtdescribe /描述一下这个面板数据情况gen age2= age2gen ttl_exp2=ttl_exp2gen t

2、enure2=tenure2global xlist grade age age2 ttl_exp ttl_exp2 tenure tenure2 not_smsa south racesum ln_w $xlist /统计描述相关变量*DID 方法-gen time = (year = 77) & !missing(year) /政策执行时间为 1977 年gen treated = (idcode XX)&!missing(idcode) /政策执行地方为 idcode 大于 XX 的地方gen did = time*treated /这就是需要估计的 DID,也就所交叉项reg ln_w

3、 did time treated $xlist /这就是一个OLS 回归,也可以用 diff 命令xtreg ln_w did time treated $xlist , fe /也可以这去做,会省略掉一个虚拟变量*PSM-DID 方法-* PSM 的部分set seed 0001 /定义种子gen tmp = runiform() /生成随机数sort tmp /把数据库随机整理psmatch2 treated $xlist, out(ln_w) logit ate neighbor(1) common caliper(.05) ties /通过近邻匹配,这里可以要 outcome,也可以

4、不要它pstest $xlist, both graph /检验协变量在处理组与控制组之间是否平衡gen common=_supportdrop if common = 0 /去掉不满足共同区域假定的观测值* DID 的部分,根据上面匹配好的数据reg ln_w did time treated $xlistxtreg ln_w did time treated $xlist , fe*PSM-DID 部分结束-*DID 方法需要满足的五个条件检验-*1.共同趋势假设检验tab year, gen(yrdum) /产生 year dummy,即每一年一个 dummy 变量forval v=1/

5、7gen treatedv=yrdumv*treated /这个相当于产生了政策实行前的那些年份与处理虚拟变量的交互项xtreg ln_w did treated* ,fe /这个没有加控制变量xtreg ln_w did treated* $xlist ,fe /如果 did 依然显著,且 treated*这些政策施行前年份交互项并不显著,那就好xtreg ln_w did treated* $xlist if union!=1 ,fe /我们认为工会会影响这个处理组和控制组的共同趋势,因此我们看看 union=0 的情形*2.政策干预时间的随机性gen time1 = (year = 75

6、) & !missing(year) /政策执行时间提前到 1975 年gen treated1= (idcode XX)&!missing(idcode) /政策执行地方为 idcode 大于 XX 的地方gen did1 = time1*treated1 /这就是需要估计的 DID,也就所交叉项gen time2 = (year = 76) & !missing(year) /政策执行时间提前到 1976 年gen treated2= (idcode XX)&!missing(idcode) /政策执行地方为 idcode 大于 XX 的地方gen did2 = time2*treated

7、2 /这就是需要估计的 DID,也就所交叉项xtreg ln_w did1 $xlist ,fextreg ln_w did2 $xlist ,fe /看看这两式子里 did1 和did2 显著不*3.控制组将不受到政策的影响gen time = (year = 77) & !missing(year) gen treated3= (idcode1000)&!missing(idcode) /我们考虑一个并没有受政策影响地方假设其受到政策影响gen did3 = time*treated3 xtreg ln_w did3 $xlist ,fe /最好的情况是 did3 不显著,证明控制组不受政

8、策影响*4.政策实施的唯一性,至少证明这个政策才是主要影响因素gen time = (year = 77) & !missing(year) gen treated4= (idcode2300)&!missing(idcode) /我们寻找某些受到其他政策影响的地方gen did4 = time*treated4 xtreg ln_w did4 $xlist ,fe /did4 可能依然显著,但是系数变小,证明还受到其他政策影响*5.控制组和政策影响组的分组是随机的xi:xtivreg2 ln_w (did=hours tenure) $xlist ,fe first /用工具变量来替代政策变

9、量,解决因为分组非随机导致的内生性问题*附加的,一般而言,我们需要看看这个政策的动态影响-forval v=8/15gen treatedv=yrdumv*treat /注意,这里 yrdum8 就相当于 year=78reg ln_w treated* xtreg ln_w treated*, fextreg ln_w treated* ,fextreg ln_w treated* $xlist ,fe /一般而言上面这些式子里的 treated*应该至少部分显著*RDD 断点回归在这里的应用-*最优带宽rdbwselect ln_w year if 60rdob ln_w year, c(77) /这个命令是 imbens 新开发的*RDD 回归reg ln_w time $xlist if 60tab treated,missingkeep if treated=1cmogram ln_w year,cut(77) scatter lineat(77) qfitci /这个可以画出 RDD 回归的图写在后面:各位圈友,咱们的计量经济圈社群里面资料和计量咨询都很多,希望大家能够积极加入咱们这个大家庭(戳这里) 。之后我们会逐步邀请社群里的圈友再直接建立微信群与圈圈对话,进去之后一定要看“群公告” ,不然接收不了群息。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号