欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

倾向得分匹配的stata命令_培训对工资是否影响显著:倾向得分匹配法(PSM)及stata实现...

发布时间:2025/3/20 编程问答 56 豆豆
生活随笔 收集整理的这篇文章主要介绍了 倾向得分匹配的stata命令_培训对工资是否影响显著:倾向得分匹配法(PSM)及stata实现... 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

第一部分   模型背景

1、研究目的

2、基本思想

第二部分   数据介绍以及语法简介

1、数据介绍

2、语法格式

第三部分   案例讲解以及stata实现

1、变量介绍以及数据描述性统计

2、倾向匹配得分

3、平衡性检验、共同取值范围、核密度函数图

在很多情况下,经过一项处理或者政策变化之后,事物发生了一些变化,但是这种变化显著性如何,效应如何怎样度量呢?在这里我们介绍倾向得分匹配法(PSM)的模型基础和stata实现过程。

第一部分   模型背景

1、研究目的

检验接受该项目(培训)与不接受该项目(培训)对工资的影响。

2、基本思想

分析接受培训组(处理组, treatment group )接受培训行为与不接受培训行为在工资表现上的差异。但是,现实可以观测到的是处理组接受培训的事实,而处理组没有接受培训会怎样是不可能观测到的,这种状态也成为反事实( counterfactual )。

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

第二部分   数据介绍以及语法简介

1、数据介绍

Lalonde(1986)使用的数据我们对1978年参加就业培训计划对个人收入可能产生的影响感兴趣该数据集已被许多作者使用(Abadie et al。2004年,Becker和Ichino,2002年,Dehejia和Wahba,1999年)。

2、语法格式

help psmatch2psmatch2 depvar [indepvars] [if exp] [in range] [, outcome(varlist)pscore(varname) neighbor(integer) radius caliper(real) mahalanobis(varlist) ai(integer) population altvariance kernel llr kerneltype(type) bwidth(real) spline nknots(integer) common trim(real) noreplacement          descending odds index logit ties quietly w(matrix) ate]

选项含义为:

depvar因变量 ;

indepvars表示协变量;

outcome(varlist)表示结果变量;

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

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

radius表示半径匹配

核匹配 (Kernel matching)

其他匹配方法

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

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

样条匹配 (Spline matching)

马氏匹配 (Mahalanobis matching)

第三部分   案例讲解以及stata实现

本文使用的是ldw_exper.dta文件

1、变量介绍以及数据描述性统计

*数据调用use ldw_exper.dta*数据描述describe*描述性统计summarize*导出描述统计结果‘mkdir d:/resultscd c:/resultsasdoc sum

*数据分组描述性统计tabulate t, summarize(re78) means standard

分组变量为是否参加工作技能培训项目,统计变量为1978年实际工资的均值和方差。

2、倾向匹配得分

*产生随机数种子 ,生成伪随机数,满足01的均匀分布set seed 20180105 gen u=runiform() *排序order u*倾向匹配得分local v1 "t"local v2 "age edu black hisp married re74 re75 u74 u75"global x "`v1' `v2' "*1:1 匹psmatch2 t age edu black hisp married re74 re75 u74 u75, out(re78) neighbor(1) ate ties logit common

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

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

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

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

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

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

3、平衡性检验、共同取值范围、核密度函数图

*均衡性检验,匹配效果是否较好的平衡了数据pstest $v2, both graph

*共同取值范围psgraph

*核密度函数图twoway(kdensity _ps if _treat==1,legend(label(1 "Treat")))(kdensity _ps if _treat==0, legend(label(2 "Control"))),xtitle(Pscore) title("Before Matching")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")

总结

以上是生活随笔为你收集整理的倾向得分匹配的stata命令_培训对工资是否影响显著:倾向得分匹配法(PSM)及stata实现...的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。