倾向性评分匹配怎么做?步骤、参数和平衡性检验
简要回答:倾向性评分匹配(PSM)用于观察性研究中平衡组间基线差异:先用 Logistic 回归估计每个人接受处理的概率,再按评分匹配,匹配后用标准化均数差(SMD < 0.1)检验平衡,最后在匹配样本中估计处理效应。
适用场景
回顾性队列、真实世界研究中,处理组和对照组的基线特征往往不一致(例如用药组病情更重),直接比较会有混杂偏倚。PSM 通过匹配让两组在已测量的协变量上可比。
步骤
- 选择协变量:纳入同时影响处理分配和结局的基线变量,必须是处理前测量的,不能纳入处理后才出现的变量;
- 估计倾向性评分:常用 Logistic 回归,以是否接受处理为因变量;
- 匹配:常见做法是最近邻 1:1 匹配,卡钳值常设为倾向性评分 logit 标准差的 0.2 倍;也可以 1:2、1:3 或最优匹配;
- 平衡性检验:计算各协变量匹配前后的标准化均数差(SMD),一般要求 SMD < 0.1;同时看倾向性评分分布图的重叠情况;
- 估计效应:在匹配后的样本中比较结局,注意匹配样本不再独立,可考虑配对分析方法或稳健标准误;
- 敏感性分析:换用不同卡钳值、匹配比例或逆概率加权(IPTW)验证结果。
R 里的实现
- MatchIt:matchit() 完成匹配,例如 method = "nearest"、caliper = 0.2;
- cobalt:bal.tab() 输出 SMD,love.plot() 画平衡性图;
- Stata:teffects psmatch 或 psmatch2。
常见错误
- 用 P 值判断平衡(样本量变化会影响 P 值,应看 SMD);
- 纳入处理后的变量;
- 匹配后丢失大量样本却不讨论对代表性的影响;
- 认为 PSM 可以控制未测量的混杂(它不能)。
什么时候需要找导师
协变量怎么选拿不准、匹配后仍不平衡、不知道该用 PSM 还是 IPTW 时,可以请做过真实世界研究的导师帮你设计分析方案。
常见追问
匹配后样本量少了一半正常吗?
对照组远多于处理组时,1:1 匹配会丢弃大量对照,这是正常的;但如果处理组也大量匹配不上,要检查评分分布重叠情况并讨论代表性。
PSM 和多因素回归哪个好?
两者都只能控制已测量的混杂。PSM 更直观地展示组间可比性,多因素回归更简单;很多研究会同时报告作为互相验证。
卡钳值一定要 0.2 吗?
0.2 倍 logit 标准差是常用推荐值,不是硬性规定,可以做敏感性分析比较不同卡钳值的结果。
本文由鉴刊课堂教研组整理,仅介绍科研方法,供学习参考。鉴刊课堂只提供方法指导,不代写论文、不代做数据分析。
