net describe st0328,from(http://www.stata-journal.com/software/sj14-1)
平衡性假设
在 PSM 匹配时,用treat变量对控制变量进行Logit回归,得到倾向得分值。倾向得分值最接近的控制组个体即为实验组的配对样本,通过这种方法可以最大程度减少实验组与控制组个体存在的系统性差异,从而减少估计偏误。在进行PSM匹配后的其他估计前比如PSM-DID 估计前,还需进行协变量的平衡性假设检验,即匹配后各变量在实验组和控制组之间是否变得平衡,也就是说实验组和控制组协变量的均值在匹配后是否具有显著差异。如果不存在显著差异,则支持进一步的模型估计。
在平衡性检验之前,我们先使用
psmatch2
命令进行PSM匹配,处理变量为
train
,协变量为
age
、
educ
、
black
,结果变量为
re78
,采用一对一近邻匹配,具体操作如下:
use ldw_exper.dta,clear
psmatch2 train age educ black,out(re78) logit ate neighbor(1) common caliper(.05) ties
PSM 匹配完成之后,我们需要检验匹配后的样本是否满足平衡性假设,即实验组与控制组的匹配协变量是否没有显著性差异,在这里可以使用
pstest
命令进行检验,具体如下:
pstest age educ black hisp married , t(train)
平衡性假设检验结果如下:
------------------------------------------------------------------------------
|Mean| t-test | V(T)/
Variable|TreatedControl%bias | t p>|t|| V(C)
------------------------+--------------------------+---------------+----------
age |25.52724.71411.4|1.190.234|1.24
educ |10.29110.401-6.0|-0.590.557|1.60*
black |.84066.87363-8.9|-0.900.370|.
hisp |.06044.09066-10.9|-1.090.277|.
married |.18681.15229.2|0.880.380|.
------------------------------------------------------------------------------
根据t检验结果发现,以上5个协变量在实验组与控制组之间不存在显著性差异。
那么,在进行 PSM 分析之前,应当如何选择匹配协变量,使模型实现最佳的拟合效果呢?今天介绍的
psestimate
命令可以通过比较不同模型的极大似然值,帮助我们选择能实现最佳拟合效果的协变量的一阶和二阶形式。
The
psestimate
command estimates the propensity score proposed by Imbens and Rubin (2015). The main purpose of the program is to select a linear or quadratic function of covariates to include in the estimation function of the propensity score.
1. 命令的安装与示例数据导入
在Stata命令窗口执行第一行代码即可完成对
psestimate
命令的下载,然后输入第二行命令下载网上示例数据 nswre74.dta(LaLonde, 1986),并执行第三行命令导入数据。
ssc install psestimate, replace //安装命令
net get psestimate //下载命令附带的数据到当前工作路径下
use"psestimate.dta", replace
2. 命令的语法
该命令的语法如下:
psestimate depvar [indepvars][if][in][, options]
options:
totry(indepvars)
notry(varlist)
nolin
noquad
clinear(real)
cquadratic(real)
iterate(#)
genpscore(newvar)
genlor