楼主: 冲淡阳光
18172 15

[数据管理求助] 倾向值匹配(PSM)如何筛选样本进行回归 [推广有奖]

  • 0关注
  • 3粉丝

硕士生

56%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
4.3525
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
976 点
帖子
103
精华
0
在线时间
232 小时
注册时间
2016-12-29
最后登录
2025-1-14

楼主
冲淡阳光 发表于 2021-4-6 18:30:04 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
请教各位,看期刊论文用倾向值匹配,后面都有倾向值匹配后的回归结果。也就是说,需要用PSM后的样本重新跑回归,那请问需要怎么识别匹配后的样本呢?查了一圈网上的倾向值匹配资料后,发现都只是介绍匹配原理、方法及检验过程。

另外,还想请教一个问题,PSM后出现的表格ATT怎么看是满足平衡性检验的?
还有,bia%是不是得小于5%,那负值怎么办?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:倾向值匹配 倾向值 PSM 期刊论文 回归结果 倾向性得分匹配PSM

沙发
onsangwong 学生认证  发表于 2021-4-8 10:38:36

一、半径(卡尺)匹配

psmatch2 x  controls ,out(y) radius cal(0.01) ate ties logit common

pstest controls, both graph //考察匹配结果是否很好地平衡了数据

psgraph //柱状图 看on support部分越多 匹配的效果越好

  drop if _weight == . //保留匹配成功样本

然后对保留的样本再进行回归,以下同理。

二、核匹配

psmatch2 x  controls ,out(y) kernel ate ties logit common  

pstest controls, both graph //考察匹配结果是否很好地平衡了数据
*核密度函数图
kdensity _pscore if durationA==1,addplot(kdensity _pscore if durationA==0) //匹配前命令 观测密度函数图  
  kdensity _pscore if durationA==1, addplot(kdensity _pscore if _wei!=.) //匹配后命令 若两个核函数图从差异很大变得很近似,说明效果好

  drop if _weight == .

三、k邻近匹配 1:1匹配 & 1:4匹配

1:1
psmatch2 x controls  ,out(y) logit ate  n(1)  common caliper(.05) ties

pstest controls, both graph

drop if _weight == . //保留匹配样本

1:4
psmatch2 x controls  ,out(y) logit ate  n(4)  common caliper(.05) ties
pstest controls, both graph

gen pair1 = _id if _treated==0
replace pair1 = _n1 if _treated==1
gen pair2 = _id if _treated==0
replace pair2 = _n2 if _treated==1
gen pair3 = _id if _treated==0
replace pair3 = _n3 if _treated==1
bysort pair1: egen paircount1 = count(pair1)
bysort pair2: egen paircount2 = count(pair2)
bysort pair3: egen paircount3 = count(pair3)
egen byte paircount = anycount(paircount1 paircount2 paircount3), values(2)
drop if paircount==0  //保留匹配样本


至于您提的问题,建议看陈强的书高级计量经济学与stata,里面应该有很具体的说明。

藤椅
guojiahong 发表于 2021-4-9 10:12:53
drop weight==.

板凳
Estelle陆 发表于 2021-4-9 15:36:41
可以参考郭申阳等人的《倾向值分析:统计方法与应用》第五章,可以把匹配好的样本进行多元分析,也可以直接计算ATT。

截屏2021-04-09 下午3.35.38.png (821.17 KB)

截屏2021-04-09 下午3.35.38.png

报纸
冲淡阳光 发表于 2021-4-9 20:11:49
guojiahong 发表于 2021-4-9 10:12
drop weight==.
谢谢伙伴!!!

地板
冲淡阳光 发表于 2021-4-9 20:13:57
onsangwong 发表于 2021-4-8 10:38
一、半径(卡尺)匹配

psmatch2 x  controls ,out(y) radius cal(0.01) ate ties logit common
太详细了,谢谢!
不过我想问一下,最后调取样本的方法和drop if _weight ==.有何差异?我实践了一下,前者最后似乎是一对一匹配?

7
冲淡阳光 发表于 2021-4-9 20:15:25
Estelle陆 发表于 2021-4-9 15:36
可以参考郭申阳等人的《倾向值分析:统计方法与应用》第五章,可以把匹配好的样本进行多元分析,也可以直接 ...
谢谢!这种方法比较复杂,一知半解中。

8
冲淡阳光 发表于 2021-4-9 20:35:20
onsangwong 发表于 2021-4-8 10:38
一、半径(卡尺)匹配

psmatch2 x  controls ,out(y) radius cal(0.01) ate ties logit common
还想请教各位,平衡性检验是不是必须所有变量匹配前后的P值由显著到不显著???我进行平衡性检验时,有好几个的P值显著性没有变化。

9
Estelle陆 发表于 2021-4-12 12:34:38
冲淡阳光 发表于 2021-4-9 20:35
还想请教各位,平衡性检验是不是必须所有变量匹配前后的P值由显著到不显著???我进行平衡性检验时,有好 ...
检查平衡性,不能出来两颗**(p<0.01)的情况,出现一颗*(p<0.05)的要少,这样才说明平衡,不出现*最好,说明在各个变量上都平衡了

10
18226130158 发表于 2023-2-4 14:47:57
onsangwong 发表于 2021-4-8 10:38
一、半径(卡尺)匹配

psmatch2 x  controls ,out(y) radius cal(0.01) ate ties logit common
你好,我有一个问题想问,就是1:4的情况中,为什么不考虑pair4的情况呢?比如
gen pair4 = _id if _treated==0
replace pair4 = _n4 if _treated==1
egen byte paircount = anycount(paircount1 paircount2 paircount3 paircount4), values(2)
drop if paircount==0

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-1 21:27