Stata连享会现场班课程
1、前言
倍差法( DID )是政策评价中被广泛应用的方法,DID 的结果表明某项政策的实施将会对因变量平均产生多少影响,但是很多时候我们都想知道,在某一个自变量处于某一特定水平,或者是某几个自变量处于特定水平时,政策效应到底有多大。
比如说,某项政策对于居民健康有正的影响,但是我们想知道这项政策对于 20 岁、 30 岁、 60 岁的居民影响有多大。将边际分析(margin)应用到 DID 中,可以观察到在任何一个想要的位置上政策冲击的所带来的边际效应是多少。margins
命令可以实现这一功能。
接下来让我们近距离观察一下 margin
。
2、margins 命令介绍
在 Stata 命令窗口中输入 help margins
可以查看完整的帮助文件。事实上,它与 Stata 中的 predict
,lincom
等命令有密切的关系。
predict
的功能是用现有的估计结果(主要是估计所得的系数)来估计观测对象的统计指标。lincom
、nlcom
的功能在于估计已有系数的线性或非线性表达式。margin
命令综合了predict
与lincom
、nlcom
的功能,来估计边际效果。
margin
是指在基于数据集计算的拟合模型基础上,看在不同的协变量值的情况下,边际效应是多少。
简单来说,margin
其实就是,先利用已有的数据估计出模型系数,然后再用这些系数算出线性或非线性表达式的值,接着预测协变量处于一定水平上时的边际效果。
margin
本身就是一个可以实现众多功能的命令,关于它此处不做过多介绍,大家有兴趣的话可以 help
一下。
3、DID 的边际分析
Andrew P Wheeler 教授生成一份数据来具体讲述 margin
运用到 DID 中的示例,我们也使用 Andrew P Wheeler 生成的数据来给大家说明。
数据结构:Y 代表被解释变量,Post 和 Exper 可以理解为政策冲击的虚拟变量和是否为政策实施地区的虚拟变量,它们二者的交乘项系数表示政策效果,还有一个 Ord 序列变量就相当于我们经常用的 id。
很简单的数据,但是要注意,虽然 DID 及后续分析中用到了 i.month
,但是这份数据并不是多期 DID,不同的月份只是代表不同的分类, i.month
表示在全年 12 个月中每个月都有一个特有的 DID 回归系数,可以将 month 类比为对于 20 多岁组, 30 多岁组, 40 多岁组这种,一月份组,二月份组,十二月份组。
DID 回归代码如下,之所以用 xtgee
、poisson
广义估计泊松模型是由这份数据的性质决定的,这个我们可以先不用管它,就把它当作一般的回归就好。
tsset Exper Ord
asdoc xtgee Y Exper#Post i.Month, family(poisson) corr(ar1) replace
回归结果为:
GEE population-averaged model Number of obs = 264
Group and time vars: Exper Ord Number of groups = 2
Link: log Obs per group:
Family: Poisson min = 132
Correlation: AR(1) avg = 132.0