R语言在RCT中调整基线时对错误指定的稳健性

作者: 拓端tecdat | 来源:发表于2020-04-07 11:25 被阅读0次

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

    众所周知,调整一个或多个基线协变量可以增加随机对照试验中的统计功效。调整分析未被更广泛使用的一个原因可能是因为研究人员可能担心如果基线协变量的影响在结果的回归模型中没有正确建模,结果可能会有偏差。

    建立

    我们假设我们有关于受试者的双臂试验的数据。对于第i个主题,我们记录基线协变量和结果。我们让表示受试者是否被随机分配到新治疗组或标准治疗组的二元指标。在一些情况下,基线协变量可以是在随访时测量的相同变量(例如血压)的测量值。

    错误指定的可靠性

    我们现在提出这样一个问题:普通最小二乘估计是否是无偏的,即使假设的线性回归模型未必正确指定?答案是肯定的 。

    这意味着对于通过线性回归分析的连续结果,我们不需要担心通过潜在错误指定效应,我们可能会将偏差引入治疗效果估计。

    模拟

    为了说明这些结果,我们进行了一项小型模拟研究。

    我们进行了三次分析:1)使用lm()进行未经调整的分析,相当于两个样本t检验,2)调整后的分析,包括线性,因此错误指定结果模型,以及3)正确的调整分析,包括线性和二次效应。

    <- 1000\n\nn <- 1000\npi <- 0.5\n\nunadjusted <- array(0, dim=nsim)\nadjustedmisspec <- array(0, dim=nsim)\nadjustedcorrspec <- array(0, dim=nsim)\n\nfor (sim in 1:nsim) {\n\nz <- rbinom(n, 1, pi)\nx <- (n)\n\ny <- x+x^2+z+ (n)\n\n#analysis not adjusting for baseline\nunadjustedMod <- lm(y~z)\nunadjusted[sim] <- (unadjustedMod)[2]\n\n#adjusted analysis misspecified\nadjustedmisspecMod <- lm(y~z+x)\nadjustedmisspec[sim] <- (adjustedmisspecMod)[2]\n\n#adjusted correctly specified\nxsq <- x^2\nadjustedcorrspecMod <- lm(y~z+x+xsq)\nadjustedcorrspec[sim] <- (adjustedcorrspecMod)[2]\n\n}\n\nmean(unadjusted)\nmean(adjustedmisspec)\nmean(adjustedcorrspec)\n\nsd(unadjusted)\nsd(adjustedmisspec)\nsd(adjustedcorrspec)"}"> nsim <- 1000 n <- 1000 pi <- 0.5 unadjusted <- array(0, dim=nsim) adjustedmisspec <- array(0, dim=nsim) adjustedcorrspec <- array(0, dim=nsim) for (sim in 1:nsim) { z <- rbinom(n, 1, pi) x <- (n) y <- x+x^2+z+ (n) #analysis not adjusting for baseline unadjustedMod <- lm(y~z) unadjusted[sim] <- (unadjustedMod)[2] #adjusted analysis misspecified adjustedmisspecMod <- lm(y~z+x) adjustedmisspec[sim] <- (adjustedmisspecMod)[2] #adjusted correctly specified xsq <- x^2 adjustedcorrspecMod <- lm(y~z+x+xsq) adjustedcorrspec[sim] <- (adjustedcorrspecMod)[2] } mean(unadjusted) mean(adjustedmisspec) mean(adjustedcorrspec) sd(unadjusted) sd(adjustedmisspec) sd(adjustedcorrspec)

    need-to-insert-img

    运行这个 :

    mean(unadjusted)\n[1] 0.9988225\n> mean(adjustedmisspec)\n[1] 0.9980142\n> mean(adjustedcorrspec)\n[1] 0.9995535\n> sd(unadjusted)\n[1] 0.121609\n> sd(adjustedmisspec)\n[1] 0.1090832\n> sd(adjustedcorrspec)\n[1] 0.0639239\n"}"> > mean(unadjusted) [1] 0.9988225 > mean(adjustedmisspec) [1] 0.9980142 > mean(adjustedcorrspec) [1] 0.9995535 > sd(unadjusted) [1] 0.121609 > sd(adjustedmisspec) [1] 0.1090832 > sd(adjustedcorrspec) [1] 0.0639239

    need-to-insert-img

    正如所料,所有三个估算都是公正的。 但是,如果我们能够正确指定基线协变量的影响,我们也会看到更大的效率增益。

    相关文章

      网友评论

        本文标题:R语言在RCT中调整基线时对错误指定的稳健性

        本文链接:https://www.haomeiwen.com/subject/vhgiphtx.html