1、Q:为什么要使用PSM?A:解决样本选择偏误带来的内生性问题 例:上北大有助于提高收入吗?样本选择偏误:考上北大的孩子本身就很出色聪明、有毅力、能力强 解决方法:样本配对配对方法 同行业一维配对 同行业、规模相当二维配对 同行业、规模相当、股权构造相当、多维配对?PSM:把多个维度的信息浓缩成一个降维:多维到一维配对过程中的两个核心问题1 Q1:哪个样本更好一些?A1:Sample2较好:比较容易满足共同支撑假设common support assumption配对过程中的两个核心问题2 Q2:stu c1,c2,c3三人中,谁是stu PK的最正确配对对象?A2:stu c3是最正确配对对象
2、,比较容易满足平行假设balancing assumptionATTAverage Treatment Effect on the Treated平均处理效应的衡量 运用得分进展样本匹配并比较,估计出ATT值。ATT=EY(1)-Y(0)|T=1 Y(1):Stu PK 上北大后的年薪 Y(0):Stu PK 假设不上北大的年薪可观测数据可观测数据不可观测数据,不可观测数据,采用配对者的采用配对者的收入来代替收入来代替ATT=12W-9W=3W实例介绍实例介绍 研究问题:培训对工资的效应 根本思想:分析承受培训行为与不承受培训行为在工资表现上的差异。但是,现实可以观测到的是处理组承受培训的事实
3、,而如果处理组没有承受培训会怎么样是不可观测的,这种状态称为反事实。匹配法就是为了解决这种不可观测的事实的方法。实例介绍 分组:在倾向值匹配法中,根据处理指示变量将样本分为两个组。处理组,在本例中就是在NSW国家支持工作示范工程实施后承受培训的组;控制组,在本例中就是在NSW实施后不承受培训的组。研究目的:通过对处理组和对照组的匹配,在其他条件完全一样的情况下,通过承受培训的组处理组与不承受培训的组控制组在工资表现上的差异来判断承受培训的行为与工资之间的因果关系。变量定义变量变量定义定义treat接受培训(处理组)表示接受培训(处理组)表示1,没有接受培训(控制组)表示,没有接受培训(控制组)
4、表示0age年龄年龄educ受教育年数受教育年数black种族虚拟变量,黑人时,种族虚拟变量,黑人时,black=1hsip民族虚拟变量,西班牙人时,民族虚拟变量,西班牙人时,hsip=1marr婚姻状况虚拟变量,已婚,婚姻状况虚拟变量,已婚,marr=1re741974年实际工资年实际工资re751975年实际工资年实际工资变量定义re781978年实际工资年实际工资u74当在当在1974年失业,年失业,u74=1agesqage*ageeducsqeduc*educre74sqre74*re74re75sqre75*re75u74blcaku74*blcak倾向打分OLS回归结果工资的变化
5、到底是来自个体的异质性工资的变化到底是来自个体的异质性性还是培训?性还是培训?倾向打分 1.设定宏变量(1)设定宏变量breps表示重复抽样200次命令:global breps 200(2)设定宏变量x,表示age agesq educ educsq married black hisp re74 re75 re74sq re75sq u74black命令:global x age agesq educ educsq married black hisp re74 re75 re74sq re75sq u74black倾向打分 命令:pscore treat$x,pscore(mypscor
6、e)blockid(myblock)comsup numblo(5)level(0.05)logit 注:$表示引用宏变量pscore结果倾向值分布倾向值分布block中样本的分布block中的描述性统计运用得分进展样本匹配并比较方法一:最邻近方法方法一:最邻近方法nearest neighbor matchingnearest neighbor matching 含义:最邻近匹配法是最常用的一种匹配方法,它把控制组中找到的与处理组个体倾向得分差异最小的个体,作为自己的比较对象。优点:按处理个体找控制个体,所有处理个体都会配对成功,处理组的信息得以充分使用。缺点:由于不舍弃任何一个处理组,很可
7、能有些配对组的倾向得分差距很大,也将其配对,导致配对质量不高,而处理效应ATT的结果中也会包含这一差距,使得ATT准确度下降。方法一:最邻近方法方法一:最邻近方法nearest neighbor matchingnearest neighbor matching 命令 set seed 10101产生随机数种子 attnd re78 treat$x,comsup boot reps($breps)dots logit方法一:最邻近方法方法一:最邻近方法nearest neighbor matchingnearest neighbor matching方法二:半径匹配法方法二:半径匹配法radi
8、us matchingradius matching 半径匹配法是事先设定半径,找到所有设定半径范围内的单位圆中的控制样本,半径取值为正。随着半径的降低,匹配的要求越来越严。方法二:半径匹配法方法二:半径匹配法radius matchingradius matching 命令 set seed 10101 attr re78 treat$x,comsup boot reps($breps)dots logit radius(0.001)方法二:半径匹配法方法二:半径匹配法radius matchingradius matching方法三:分层匹配法方法三:分层匹配法stratification
9、 matchingstratification matching 内容:分层匹配法是根据估计的倾向得分将全部样本分块,使得每块的平均倾向得分在处理组和控制组中相等。优点:Cochrane,Chambers1965指出五个区就可以消除95%的与协变量相关的偏差。这个方法考虑到了样本的分层问题或聚类问题。就是假定:每一层内的个体样本具有相关性,而各层之间的样本不具有相关性。缺点:如果在每个区内找不到对照个体,那么这类个体的信息,会丢弃不用。总体配对的数量减少。方法三:分层匹配法方法三:分层匹配法stratification matchingstratification matching 命令 se
10、t seed 10101 atts re78 treat,pscore(mypscore)blockid(myblock)comsup boot reps($breps)dots方法三:分层匹配法方法三:分层匹配法stratification matchingstratification matching方法四:核匹配法方法四:核匹配法kernel matchingkernel matching 核匹配是构造一个虚拟对象来匹配处理组,构造的原那么是对现有的控制变量做权重平均,权重的取值与处理组、控制组PS值差距呈反向相关关系。方法四:核匹配法方法四:核匹配法kernel matchingker
11、nel matching 命令 set seed 10101 attk re78 treat$x,comsup boot reps($breps)dots logit方法四:核匹配法方法四:核匹配法kernel matchingkernel matchingpsmatch2匹配变量的筛选 1.设定宏变量设定宏变量x,表示age agesq educ educsq married black hisp re74 re75 re74sq re75sq u74black命令:global x age agesq educ educsq married black hisp re74 re75 re7
12、4sq re75sq u74black匹配变量的筛选 2.初步设定 logit treat$x匹配变量的筛选 3.逐步回归 stepwise,pr(0.1):logit treat$xps值的计算 psmatch2 treat$x,out(re78)倾向得分的含义是,在给定X的情况下,样本处理的概率值。利用logit模型估计样本处理的概率值。概率表示如下:P(x)=PrD=1|X=ED|X匹配处理组 最近邻匹配 命令:psmatch2 treat$xif soe=1,out(re78)neighbor(2)ate 半径匹配 命令:psmatch2 treat$x,out(re78)ate ra
13、dius caliper(0.01)核匹配 命令:psmatch2 treat$x,out(re78)ate kernel匹配处理组 满足两个假设:A共同支撑假设B平行假设ATT平均处理效应的衡量以半径匹配为例:psmatch2 treat$x,out(re78)ate radius caliper(0.01)1、处理组平均效应、处理组平均效应ATT2、控制组平均效应、控制组平均效应ATU3、总体平均效应、总体平均效应ATEATT平均处理效应的衡量 匹配前后变量的差异比照 命令:pstest re78$xpstest re78$x,both graph匹配前后密度函数图twoway(kdens
14、ity _ps if _treat=1,legend(label(1 Treat)(kdensity _ps if(_wei!=1&_wei!=.),legend(label(2 Control),xtitle(Pscore)title(After Matching)twoway(kdensity _ps if _treat=1,legend(label(1 Treat)(kdensity _ps if _treat=0,legend(label(2 Control),xtitle(Pscore)title(Before Matching)运用bootstrap获得ATT标准误 命令:bootstrap,reps(#):psmatch2 treat$x,out(re78)在统计分析中,样本较少,采用bootstrap,可以减少小样本偏误。步骤:首先,从原始样本中可重复地随机抽取n个观察值,得到经历样本;然后采用PSM计算改经历样本的平均处理效果ATT;将第一步和第二步重复进展#次,得出#个ATT值;计算#个ATT值的标准差。核匹配的Bootstrap检验
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。