倾向匹配得分教程(附PSM操作应用、平衡性检验、共同取值范围、​核密度函数图)

您所在的位置:网站首页 均衡性什么意思 倾向匹配得分教程(附PSM操作应用、平衡性检验、共同取值范围、​核密度函数图)

倾向匹配得分教程(附PSM操作应用、平衡性检验、共同取值范围、​核密度函数图)

2023-11-06 10:15| 来源: 网络整理| 查看: 265

help psmatch2

上述主要介绍了如何获得PSM相关的命令,总结一下目前市面上用的较好的命令为psmatch2.

PSM 相关命令

help psmatch2

help nnmatch

help psmatch

help pscore

持续获取最新的 PSM 信息和程序

findit propensity score

findit matching

psmatch2 is being continuously improved and developed. Make sure to keep your version up-to-date as follows

ssc install psmatch2, replace

where you can check your version as follows:

which psmatch2

2

语法格式

语法格式为:

help psmatch2

选项含义为:

depvar因变量 ;

indepvars表示协变量;

outcome(varlist)表示结果变量;

logit指定使用logit模型进行拟合,默认的是probit模型;

neighbor(1)指定按照1:1进行匹配,如果要按照1:3进行匹配,则设定为neighbor(3);

radius表示半径匹配

核匹配 (Kernel matching)

其他匹配方法

广义精确匹配(Coarsened Exact Matching) || help cem

局部线性回归匹配 (Local linear regression matching)

样条匹配 (Spline matching)

马氏匹配 (Mahalanobis matching)

pstest $X, both做匹配前后的均衡性检验,理论上说此处只能对连续变量做均衡性检验,对分类变量的均衡性检验应该重新整理数据后运用χ2检验或者秩和检验。但此处对于分类变量也有一定的参考价值。

psgraph对匹配的结果进行图示。

3

案例应用

政策背景:国家支持工作示范项目( National Supported Work,NSW )

研究目的:检验接受该项目(培训)与不接受该项目(培训)对工资的影响。基本思想:分析接受培训组(处理组, treatment group )接受培训行为与不接受培训行为在工资表现上的差异。但是,现实可以观测到的是处理组接受培训的事实,而处理组没有接受培训会怎样是不可能观测到的,这种状态也成为反事实( counterfactual )。

匹配法就是为了解决这种不可观测事实的方法。在倾向得分匹配方法( Propensity Score Matching )中,根据处理指示变量将样本分为两个 组,一是处理组,在本例中就是在 NSW 实施后接受培训的组;二是对照组 ( comparison group ),在本例中就是在 NSW 实施后不接受培训的组。倾向得分 匹配方法的基本思想是,在处理组和对照组样本通过一定的方式匹配后,在其他 条件完全相同的情况下,通过接受培训的组(处理组)与不接受培训的组(对照组)在工资表现上的差异来判断接受培训的行为与工资之间的因果关系。

1、首先进行数据结构查看

2、描述性分析

3、倾向匹配得分

3.1 首先进行排序,生成随机数种子

3.2 倾向匹配得分

psmatch2 $x, out(re78) neighbor( 1) ate ties logit common // 1:1 匹配$表示引用宏变量,

等价于 psmatch2 t age edu black hisp married re74 re75 u74 u75, out(re78) neighbor( 1) ate ties logit common

‍结果为:

3.3 查看匹配后数据

打开数据编辑窗口,会发现软件自动生成了几个新变量:

其中_pscore是每个观测值对应的倾向值;

_id是自动生成的每一个观测对象唯一的ID(事实上这列变量即是对_pscore排序);

_treated表示某个对象是否试验组;

_n1表示的是他被匹配到的对照对象的_id(如果是1:3匹配,还会生成_n2, _n3);

_pdif表示一组匹配了的观察对象他们概率值的差。

3.4 均衡性检验

3.5 共同取值范围

3.6 核密度函数图

. twoway(kdensity _ps if_treat== 1,legend(label( 1"Treat")))(kdensity _ps if(_weight!= 1&_weight!=.), legend(label( 2"Control"))), > xtitle(Pscore) title( "After Matching")

返回搜狐,查看更多



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3