//  用STATA 进行倾向性评分匹配法1:1

// 特别适用于横断面的病例对照研究,均衡其他因素,重点研究某些因素。

// 1:2或多  后续发出 ; 逆概率加权 后续发出

//数据先自己经行预处理和清洗

//数据说明,我们探讨吸烟的影响,这时候,要其他变量在两组分布比较一致
// 以下两步对所有观测值进行随机排序
gen temp=runiform()
sort temp
//计算倾向评分并为处理组找到相应的对照。psmatch2 因变量 协变量。除吸烟smoke外,匹配其他变量达到均衡,目的是为探讨吸烟与group的关系。neighbor是指处理组匹配的对照的个数,1:1配比法,因而在此选1。caliper是本例所用的卡钳值。noreplacement是指不重复利用对照。
// 年龄和bmi   最好用连续性变量 group就是病例和对照组
psmatch2 group age bmi gender alcohol brush_rate denture hypertension diabetes, logit neighbor(1) common caliper(0.02) ties noreplacement
//对一n1变量进行排序
sort _n1
//配比前后各协变量的均衡性比较.对其拟合优度进行评估,如果C值太低,就要考虑一些重要的混杂变量可能没有纳人到模型。有研究者认为,C值越大拟合效果越好,认为C
//值≥0.8是模型拟合效果很好的指标,但C值太高,两者的可比性将很差,因此实际应用中不要盲目地以C值越高越好来评价模型拟合的好坏归。
pstest,both    
//以图片形式展示匹配结果
psgraph 
//至此,倾向得分的计算及为每个处理组寻找合适的对照已完成,建议做到这步可保存一份数据,后面筛选会经常用到这个数据库

//自己在桌面建立一个文件夹,PSM
save "C:\Users\xxx\Desktop\PSM\pscore.dta" 
//保留吸烟组,删除不吸烟组
keep if group==1
//删除未配比成功的
drop if _support==0
//保留不吸烟组的id编号
keep _n1
//删除重复的对照
duplicates drop      
//重命名_n1为_id以便后续合并作为关键变量
ren _n1 _id 
//选出对照组的id号并保存到相应文件夹
save "C:\Users\xxx\Desktop\PSM\_idduizhao.dta"

//打开之前保存的pscore.dta数据库
use "C:\Users\xxx\Desktop\PSM\pscore.dta", clear
//与对照组的_idduizhao.dta数据库合并,筛选出对照的数据库
joinby _id using "C:\Users\xxx\Desktop\PSM\_idduizhao.dta", unmatched(none)
//根据id大小给对照组的每个观测值编号,并生成一个新变量match
sort _id
egen match=fill(1 2)  
//保存筛选出的对照数据库
save "C:\Users\xxx\Desktop\PSM\duizhao.dta"

//打开之前保存的pscore.dta数据库
use "C:\Users\xxx\Desktop\PSM\pscore.dta", clear
//保留吸烟组,删除不吸烟组
drop if group==0
//删除未配比成功的,剩下的就是配比成功的处理组
drop if _support==0   
//删除重复利用对照的研究对象
duplicates drop _n1,force  
//对_id进行排序
sort _id  
//根据id大小给处理组的每个观测值编号,并生成一个新变量match  
egen match=fill(1 2) 
//将处理组与对照组合并,该数据库即为倾向评分1:1配比后的数据库
append using "C:\Users\xxx\Desktop\PSM\duizhao.dta"
// 记得马上codebook group 看下删去了多少

STATA PSM倾向性评分匹配法 1:1相关推荐

  1. R语言 1:2 1:n 倾向性评分匹配法PSM 一个病例多个对照 MatchIt包

    1:2 /1:N 倾向性评分匹配法PSM, 条件Logistic回归 MatchIt包进行倾向性评分匹配法(Propensity Score Matching, PSM)主要是1:N匹配.一个病例对应 ...

  2. PSM倾向得分匹配法【python实操篇】

    前言 大家好,我是顾先生,PSM倾向性得分匹配法的Python代码实操终于来啦! ​ 对于PSM原理不太熟悉的同学可以看看前一篇文章:PSM倾向得分匹配法[上篇:理论篇] 目前网上PSM实操的相关文章 ...

  3. python倾向匹配得分_在SPSS软件中实现1:1倾向性评分匹配(PSM)分析

    谈起临床研究,如何设立一个靠谱的对照,有时候成为整个研究成败的关键.对照设立的一个非常重要的原则就是可比性,简单说就是对照组除了研究因素外,其他的因素应该尽可能和试验组保持一致,随机是最理想的策略!通 ...

  4. spss连接至远程计算机,SPSS操作:轻松实现1:1倾向性评分匹配(PSM)

    谈起临床研究,如何设立一个靠谱的对照,有时候成为整个研究成败的关键.对照设立的一个非常重要的原则就是可比性,简单说就是对照组除了研究因素外,其他的因素应该尽可能和试验组保持一致,这里就不得不提随机对照 ...

  5. Propensity Score Matching(PSM)倾向性评分匹配

    Propensity Score Matching(PSM)倾向性评分匹配 PSM能够解决什么问题? 在医疗领域,研究一款新药是否有效,通常需要做的是大规模分组实验,treatment(实验组) 与 ...

  6. psm倾向得分匹配法举例_倾向得分匹配法(PSM)举例及stata实现

    倾向得分匹配法 (PSM) 举例及 stata 实现 偏好分数匹配法 (PSM) 和 stata 实施 - 阅读注释 [ 示例 ] 政策背景 : 国家支持的工作,新南威尔士州 ) 研究目标 : 测试接 ...

  7. python倾向匹配得分_临床研究的最后一道防线(四):倾向性评分匹配PSM在Python的实现...

    临床研究的最后一道防线(四):倾向性评分匹配(propensity score matching, PSM) 在Python的实现 No.25介绍了SPSS实现倾向性评分匹配(propensity s ...

  8. R实战 | 倾向性评分匹配(PSM)

    PSM 「倾向性评分匹配」(propensity score matching,PSM)是一种用来评估处置效应的统计方法.广义说来,它将样本根据其特性分类,而不同类样本间的差异就可以看作处置效应的无偏 ...

  9. 倾向性评分匹配 Propensity Score Matching

    @[TOC](倾向性得分匹配 Propensity Score Matching)k 前言 提示:本文为基于Youtube视频:An intuitive introduction to Propens ...

最新文章

  1. navicat 连接oracle
  2. ubuntu下wps无法使用搜狗输入法输入中文
  3. 数组模拟单链表acwing826. 单链表
  4. 如何美化linux终端输出
  5. 【tensorflow-keras-GRU】keras.layers.GRU 门限循环单元网络(Gated Recurrent Unit)
  6. 事实表和维度表是怎么造数据_从电商数据指标到电商数据中台
  7. 精讲Java NIO
  8. CheckedListBox扩展方法代码
  9. soapui 证书_SoapUI入门之附件上传和配置Https请求
  10. python之socket编程
  11. dingo php,dingo 配置
  12. ACM training贪心算法——坐椅子的背包问题
  13. layui引入jQuery
  14. Helm 3 完整教程(六):在模板中使用 Helm 函数
  15. 实验楼mysql实验-搭建一个简易的成绩管理系统的数据库
  16. 分布式与集群的联系与区别
  17. 阶段5 3.微服务项目【学成在线】_day04 页面静态化_10-freemarker静态化测试-基于模板文件静态化...
  18. 如何用matlab解决数学建模中的报童问题
  19. Cython简单demo
  20. nexus上传jar总是读条而上传不成功的问题

热门文章

  1. 商品房(房屋)销售系统设计与实现
  2. html仿qq分组,iOS 实现类似QQ分组样式的两种方式
  3. python中奇偶数怎么表示_python怎么对输出的奇数偶数排序?
  4. 计算机专业就业方向有哪些呢?如何进大厂实习拿offer
  5. java 字符串分割的三种方法(总结)
  6. java ftp定时上传_ftp自动删除,ftp自动删除文件、定时上传文件的方式及java环境配置...
  7. Windows11怎么打开设备管理器
  8. 一文读懂“大语言模型”
  9. Cisco IPPhone XML 技术文档
  10. 人生苦短我用Python(一)——基本类型和语法