did双重差分法_Stata中双重差分操流程及代码
01
简介
现代计量经济学和统计学的发展为我们的研究提供了可行的工具。倍差法来源于计量经济学的综列数据模型,是政策分析和工程评估中广为使用的一种计量经济方法。主要是应用于在混合截面数据集中,评价某一事件或政策的影响程度。该方法的基本思路是将调查样本分为两组,一组是政策或工程作用对象即“作用组”,一组是非政策或工程作用对象即“对照组”。根据作用组和对照组在政策或工程实施前后的相关信息,可以计算作用组在政策或工程实施前后某个指标(如收入)的变化量(收入增长量),同时计算对照组在政策或工程实施前后同一指标的变化量。然后计算上述两个变化量的差值(即所谓的“倍差值”)。这就是所谓的双重差分估计量(Difference in Differences,简记DD或DID),因为它是处理组差分与控制组差分之差。该法最早由Ashenfelter(1978)引入经济学,而国内最早的应用或为周黎安、陈烨(2005)。
常用的倍差法主要包括双重倍差法和三重倍差法。双重差分法(Difference-in-difference,DID)有几种其他的称谓:倍差法、差分再差分等。该方法的原理非常简单,它要求数据期至少有两期,所有的样本被分为两类:实验组和控制组,其中实验组在第一期是没有受到政策影响,此后政策开始实施,第二期就是政策实施后的结果,控制组由于一直没有受政策干预,因此其第一期和第二期都是没有政策干预的结果。双重差分方法的测算也非常简单,两次差分的效应就是政策效应。
双重差分法的假定,为了使用OLS一致地估计方程,需要作以下两个假定。
假定1:此模型设定正确。特别地,无论处理组还是控制组,其时间趋势项都是。此假定即“平行趋势假定”(parallel trend assumption)。DID最为重要和关键的前提条件:共同趋势(Common Trends)
双重差分法并不要求实验组和控制组是完全一致的,两组之间可以存在一定的差异,但是双重差分方法要求这种差异不随着时间产生变化,也就是说,处理组和对照组在政策实施之前必须具有相同的发展趋势。
假定2:暂时性冲击与政策虚拟变量不相关。这是保证双向固定效应为一致估计量(consist estimator)的重要条件。在此,可以允许个体固定效应与政策虚拟变量相关(可通过双重差分或组内变换消去,或通过LSDV法控制)。
DID允许根据个体特征进行选择,只要此特征不随时间而变;这是DID的最大优点,即可以部分地缓解因 “选择偏差”(selection bias)而导致的内生性(endogeneity)。
02
双重差分操作案例
Difference in differences (DID) Estimation step‐by‐step双重差分操作步骤
首先我们读入所需数据,生成政策前后以及控制组虚拟变量,并将它们相乘产生交互项。
方法一:
Getting sample data调用数据
use "http://dss.princeton.edu/training/Panel101.dta", clear
Create a dummy variable to indicate the time when the treatment started. Lets assume that treatment started in 1994. In this case, years before 1994 will have a value of 0 and 1994+ a 1. If you already have this skip this step.设置虚拟变量,政策执行时间为1994年
gen time = (year>=1994) & !missing(year)
*Create a dummy variable to identify the group exposed to the treatment. In this example lets assumed that countries with code 5,6, and 7 were treated (=1). Countries 1-4 were not treated (=0). If you already have this skip this step生成地区的虚拟变量
gen treated = (country>4) & !missing(country)
* Create an interaction between time and treated. We will call this interaction ‘did’ 产生交互项
gen did = time*treated
Estimating the DID estimator随后将这三个变量作为解释变量,y作为被解释变量进行回归:
reg y time treated did, r
结果为:
did的系数显著为负,表明政策实施对Y有显著的(10%显著性水平下)负效应
方法二:diff
The command diff is user‐defined for Stata,To install type
ssc install diff下载外部命令方法
diff y, t(treated) p(time)
03
双重差分平行趋势检验
平行趋势检验
首先生成年份虚拟变量与实验组虚拟变量的交互项,此处选在政策前后各3年进行对比。
gen period = year - 1994
forvalues i = 3(-1)1{
gen pre_`i' = (period == -`i' & treated == 1) }
gen current = (period == 0 & treated == 1)
forvalues j = 1(1)3{
gen time_`j' = (period == `j' & treated == 1)
}
随后将这些交互项作为解释变量进行回归,并将结果储存在reg中以备后续检验。
xtreg y time treated pre_* current time_* i.year, fe
est sto reg
采用coefplot命令进行绘图,观察是否1994年前的回归系数均在0轴附近波动,在1994年后回归系数显著为负。
coefplot reg, keep(pre_* current post_*) vertical recast(connect) yline(0) xline(3, lp(dash))
结果发现系数在政策前的确在0附近波动,而政策后一年系数显著为负,但很快又回到0附近。这说明实验组和控制组的确是可以进行比较的,而政策效果可能出现在颁布后一年,随后又很快消失。
did双重差分法_Stata中双重差分操流程及代码相关推荐
- 双重差分模型能做固定效应吗_stata中双重差分操流程及代码
原标题:stata中双重差分操流程及代码 一.简介 现代计量经济学和统计学的发展为我们的研究提供了可行的工具.倍差法来源于计量经济学的综列数据模型,是政策分析和工程评估中广为使用的一种计量经济方法.主 ...
- DID会固定年份吗_双重差分(DID)操流程及代码
01 简介 现代计量经济学和统计学的发展为我们的研究提供了可行的工具.倍差法来源于计量经济学的综列数据模型,是政策分析和工程评估中广为使用的一种计量经济方法.主要是应用于在混合截面数据集中,评价某一事 ...
- 双重差分法|DID|PSM|平行趋势检验|安慰剂检验|Stata代码
双重差分与稳健性检验原理 双重差分法 以两期面板为例 数据采用cardkrueger1994.dta,可在陈强老师个人主页<高级计量经济学及Stata应用>, 第2版下载数据集 基本模型 ...
- did双重差分法_互助问答第252期:双重差分平行趋势检验等问题
老师您好,关于双重差分法的适用性问题:基于现有样本数据,做出平行趋势图如下,设想将A组作为控制组,B组作为实验组,采用双重差分法检验政策出台对B组有抑制效应,请问老师基于这张图是否可行? 2. 关于三 ...
- 双重差分模型能做固定效应吗_数据分析之道 | 双重差分法(DID)
Picture from Internet DID是什么? 双重差分法(DID)又被称为"倍差法",小名"差中差",是种专门用于分析政策效果的计量方法. 我国最 ...
- 双重差分模型能做固定效应吗_双重差分法的平行趋势假定
Prof. Orley Ashenfelter, architect of modern labor economics, former AEA president 双重差分法是估计处理效应的常见方法 ...
- python包怎么做双重差分did分析_【研究方法】双重差分法(DID)介绍
双重差分法,英文名Differences-in-Differences,别名"倍差法",小名"差中差".作为政策效应评估方法中的一大利器,双重差分法受到越来越多 ...
- python 双重差分_双重差分法(DID)介绍
双重差分法,英文名Differences-in-Differences,别名"倍差法",小名"差中差".作为政策效应评估方法中的一大利器,双重差分法受到越来越多 ...
- 双重差分模型能做固定效应吗_Stata:双重差分的固定效应模型 (DID)
作者:张伟广 | 知乎 | 简书 | 码云 2020寒假Stata现场班 (北京, 1月8-17日,连玉君-江艇主讲),「+助教招聘」 双重差分法(DID)作为估计处理效应的工具方法,常被用来对政策实 ...
最新文章
- 用友Cell组件使用总结
- 一套代码称霸5大端口,移动金融应用还能这样开发?
- 自己封装线程(Demo)
- Bug之数据sql插入不显示
- Delphi 26 岁
- react钩子_迷上了钩子:如何使用React的useReducer()
- 学校为什么要单位接收函_为什么要选择语言学校留学?
- oracle 数据操作指令,ORACLE数据操作命令
- 蓝桥杯 ADV-194 算法提高 盾神与积木游戏 java版
- 密码学加解密实训(墨者学院摩斯密码第2题)
- GTK 3.0弹出窗口及设置背景图片的代码
- 千里达v1000时速_20速碳纤维山地车千里达V1000评测
- 如何裁剪动态图片?教你三步快速裁剪GIF
- 深入理解什么是端口(port)
- IPv6的思科培训启用SSH在Cisco IPv6路由器
- 量化策略:如何利用自回归模型构建日内高频策略
- jQuery的9种方式实现下拉列表
- GNU系统下DL_POLY的编译
- excel运行python自定义函数_终于,可以在Excel中直接使用Python!
- 2020双十一实时大屏_王者荣耀2020双十一活动怎么玩 王者荣耀2020双十一活动玩法攻略...
热门文章
- ORM(四)应用.脚本管理工具
- httpclient封装获取响应实体_Httpclient 接口自动化
- 安卓APP_ 布局(1)—— LinearLayout
- 树莓派外设开发之接入语音模块
- python处理excel的方法有哪些_python简单处理excel方法
- java jdbc reparecall_Java Connection.prepareCall方法代碼示例
- docker修改容器名字
- Java通过Netty,实现Websocket消息推送简单几步搞定
- 9本Java程序员必读的书
- 献给母亲节的沙画,致此生最爱——母亲!