倾向评分匹配(Propensity Score Matching,简称PSM)是一种统计学方法,用于处理观察研究(Observational Study)的数据,在SCI文章中应用非常广泛。在观察研究中,由于种种原因,数据偏差(bias)和混杂变量(confounding variable)较多,倾向评分匹配的方法正是为了减少这些偏差和混杂变量的影响,以便对实验组和对照组进行更合理的比较。
为什么需要做倾向评分匹配?
我们知道RCT的证据力度高,是因为对患者进行了严格的筛选。我们的回顾性研究都是过去的数据,很难像RCT一样进行严格的筛选出两组患者基线相近的基础资料,但我们可以通过倾向评分匹配把回归性的数据进行筛选,把基线资料相近的患者进行匹配,得到近似RCT的效果。
应用场景
 1.基线资料不平
 2.开展病例对照研究病阳性例数较少,如罕见病研究
 3.将众多混杂因素变为一个变量:倾向值
以下为一个实例,没进行匹配前两组患者基线资料相差很大,进行倾向评分匹配后,基线资料近似一致了

既往我们已经介绍了使用R和SPSS进行倾向评分匹配,后台有不少粉丝问怎么进行3组患者数据的倾向评分匹配,今天我们来演示一下。
目前尚未有能制作3组评分匹配的专门R包,本文进行3组倾向评分匹配的方法来源于以下2篇论文(见参考文献),R的操作来源于第二篇论文。
在第二篇论文中,作者给出了实现机理及给出了主要的R代码,但作者的代码有点乱,亢余代码较多,而且只有部分主要代码,我依据作者的思路和匹配方法补齐了方法部分代码和修正了部分错误,下面通过我们的早产数据来一步步实现,想了解原理请下载作者论文。
继续使用我们的早产数据,我们先导入数据

bc<-read.csv("E:/r/test/zaochan.csv",sep=',',header=TRUE)


这是一个关于早产低体重儿的数据(公众号回复:早产数据,可以获得该数据),低于2500g被认为是低体重儿。数据解释如下:low 是否是小于2500g早产低体重儿,age 母亲的年龄,lwt 末次月经体重,race 种族,smoke 孕期抽烟,ptl 早产史(计数),ht 有高血压病史,ui 子宫过敏,ftv 早孕时看医生的次数,bwt 新生儿体重数值。
我们先把分类变量转成因子

bc$race<-ifelse(bc$race=="black",1,ifelse(bc$race=="white",2,3))
bc$smoke<-ifelse(bc$smoke=="nonsmoker",0,1)
bc$low<-factor(bc$low)
bc$race<-factor(bc$race)
bc$ht<-factor(bc$ht)
bc$ui<-factor(bc$ui)

假设我们研究的是有不同种族(race)对生出低体重儿(low)的影响。需要对3个种族进行基线资料倾向评分匹配

本文为转载文章,原文地址如下:
https://mp.weixin.qq.com/s/qnTJfjZnX4ZrmVsRAKiWqw

R语言3组患者倾向性评分匹配(PSM)相关推荐

  1. R语言完成1:N倾向性评分匹配PSM

    #安装包 > library(MatchIt) > install.packages("Tableone") > library(Tableone) #数据集整理 ...

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

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

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

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

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

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

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

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

  6. 基于R语言3组以上倾向评分逆概率加权(IPTW)

    基于 PS (倾向评分)的IPTW 法首先由Rosenbaum作为一种以模型为基础的直接标准化法提出,属于边际结构模型.简单来说,就是把许多协变量和混杂因素打包成一个概率并进行加权,这样的话,我只用计 ...

  7. 首发,pm3包,一个用于多组(3组)倾向评分匹配的R包

    目前,本人写的第二个R包pm3包已经正式在CRAN上线,用于3组倾向评分匹配,只能3组不能多也不能少. 可以使用以下代码安装 install.packages("pm3") 什么是 ...

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

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

  9. R语言使用MatchIt包进行倾向性匹配分析、使用match.data函数构建匹配后的样本集合、使用可视化分析检验倾向性评分匹配后样本中的所有协变量的平衡情况

    R语言使用MatchIt包进行倾向性匹配分析.使用match.data函数构建匹配后的样本集合.使用可视化分析检验倾向性评分匹配后样本中的所有协变量的平衡情况 目录

最新文章

  1. linux下java写ftp服务器端,在Linux下部署网站(java环境部署)第五章 FTP服务器搭建...
  2. Shell教程(四):条件语句、循环语句、break/continue
  3. java对xml文件的读写_java 自己做的对XML文件的读写操作
  4. r语言 断轴 画图_R语言作图——Density plot
  5. leetcode538. 把二叉搜索树转换为累加树
  6. leetcode 75. 颜色分类(双指针)
  7. python tkinter控件_python tkinter 控件与布局 项目实战
  8. linux删除csv换行符,从CSV保存行删除换行符(Remove linefeed from csv preserving r
  9. 基于jeesite的cms系统(一):开发环境搭建
  10. 【转】java线程池的原理和机制
  11. [Mysql]InnoDB数据页结构(掘金小册阅读笔记)
  12. 计算机编辑文档教程,腾讯TIM在线文档编辑功能使用方法教程
  13. 学习笔记(二)之字符常量和字符串常量
  14. 指纹识别算法的matlab实现
  15. LM2903器件使用说明
  16. Android程序员英文介绍,安卓程序员面试英文自我介绍
  17. java画太极加图片_使用Java 2D绘制黑白太极图案
  18. ZooKeeper 选举机制
  19. Octane帮助文档中英双语版免费下载、oc用户手册、oc帮助手册
  20. 如何在WORD中插入可播放的视频

热门文章

  1. 【小白】SQLyog下载安装配置篇全攻略
  2. mysql yog32位下载_Sqlyog32位下载
  3. 协同效应 - 智能商业的价值源泉
  4. 关于QCefView(Cef)运行时候的出现Couldn't open .pak 不能加载.pak文件的错误。
  5. MybatisPlus出现Error querying database. Cause: java.lang.IndexOutOfBoundsException问题
  6. 【调剂】天津科技大学接收计算机相关专业调剂研究生
  7. [docker]十一、docker nfs服务
  8. ubuntu20安装出现致命错误_Ubuntu 20.04 依赖包安装错误解决方案
  9. 学生信息管理系统之 添加用户流程
  10. git bash命令