首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >R语言使用倾向评分提高RCT(随机对照试验)的效率

R语言使用倾向评分提高RCT(随机对照试验)的效率

作者头像
拓端
发布2020-07-17 11:11:55
发布2020-07-17 11:11:55
1.1K0
举报
文章被收录于专栏:拓端tecdat拓端tecdat

原文链接:http://tecdat.cn/?p=6404

倾向评分已成为观察性研究中混杂因素调整的常用方法。基本思想是模拟接受治疗或暴露的概率如何取决于混杂因素,即要治疗的“倾向”。

首先要注意的是,人们不会认为倾向评分在RCT中起作用。如上所述,倾向评分用于调整观察性研究中的混淆。在RCT中,随机化确保治疗和其他基线变量在统计学上是独立的,即没有混淆。那么倾向得分有什么用呢?

治疗加权方法的逆概率

在论文中,Williamson,Forbes和White描述了如何使用倾向得分来获得效率提高的治疗效果评估(较小的标准误差)。该方法与标准方法相同,其中人们估计倾向评分模型,然后拟合通过倾向评分的倒数加权的结果模型。因此,在第一步中,我们拟合二元治疗指标的模型,基线变量作为协变量。通常我们会使用逻辑回归模型进行建模。

从拟合的倾向评分模型中,我们获得试验中每个受试者的估计接受治疗的概率(而不是对照)。对于二元结果,我们可以拟合逻辑或对数链接回归来估计比值比或风险比。

模拟研究

对于实际的方法,我们可以使用二元结果和正态分布的基线变量进行小型模拟研究。我们使用逻辑回归模型生成。然后,我们使用基线变量(未调整的分析)估算优势比,然后实施IPTW估算器:

代码语言:javascript
复制
###模拟研究
nSim < -  1000
n < -  1000

unadjustedEst < -  array(0,dim = nSim)
IPTW_Est < -  array(0,dim = nSim)

for(i in 1:nSim){

z < -  1 *(runif(n)<0.5)
x < -  rnorm(n)
xb < -  x + z
prob < -  exp(xb)/(1 + exp(xb))
y < -  1 *(runif(n)<prob)

未调整的< -  glm(y~z,family = binomial)

#IPTW估算 #first我们适合倾向评分模型

代码语言:javascript
复制
propModel < -  glm(z~x,family = binomial)
fitted_p < - 拟合(propModel)
#calculate权重
wgt < -  1 / fitted_p
wgt [z == 0] < -  1 /(1-fitted_p [z == 0])

iptwMod < -  glm(y~z,family = binomial,weight = wgt)
IPTW_Est [i] < -  iptwMod $ coef [2]

}

然后,我们通过观察1000个模拟中的平均值和经验值SD来查看两个估算器的性能:

代码语言:javascript
复制
> mean(unadjustedEst)
[1] 0.8392246
> sd(unadjustedEst)
[1] 0.1353718
>
> mean(IPTW_Est)
[1] 0.8364911
> sd(IPTW_Est)
[1] 0.1220977

我们首先注意到平均对数比值比处理效果估计值约为0.84,而不是数据生成机制中使用的值1。这是因为0.84是边际优势比,而1是条件优势比。

接下来,我们看到IPTW估计器在重复样本中的变量小于标准的未调整估计器。因此,我们通过使用基线变量获得了效率。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 拓端数据部落 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原文链接:http://tecdat.cn/?p=6404
  • 治疗加权方法的逆概率
  • 模拟研究
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档