我对成对观测中的二进制响应数据建模感兴趣。我们的目的是对小组进行事前干预的有效性进行推断,可能会针对多个协变量进行调整,并确定接受过特别培训的小组作为干预措施的一部分是否会影响效果。
给定以下形式的数据:
id phase resp
1 pre 1
1 post 0
2 pre 0
2 post 0
3 pre 1
3 post 0
和一个的配对响应信息列联表:
我们对假设的检验感兴趣:。
McNemar的检验给出:在(渐近)。这是直观的,因为在零值下,我们期望不平等对(和)的比例相等,有利于产生积极影响()或消极影响()。以肯定案例定义的概率定义和。观察到正不一致对的几率是。
另一方面,条件逻辑回归使用不同的方法通过最大化条件可能性来检验相同的假设:
其中。
那么,这些测试之间是什么关系?如何对前面介绍的列联表进行简单测试?查看空值下clogit和McNemar的方法对p值的校准,您会认为它们完全无关!
library(survival)
n <- 100
do.one <- function(n) {
id <- rep(1:n, each=2)
ph <- rep(0:1, times=n)
rs <- rbinom(n*2, 1, 0.5)
c(
'pclogit' = coef(summary(clogit(rs ~ ph + strata(id))))[5],
'pmctest' = mcnemar.test(table(ph,rs))$p.value
)
}
out <- replicate(1000, do.one(n))
plot(t(out), main='Calibration plot of pvalues for McNemar and Clogit tests',
xlab='p-value McNemar', ylab='p-value conditional logistic regression')
我似乎记得,可以将McNemar的检验参数化为比值比的检验,所以我不知道该如何写出该检验的似然性(条件似然性?)。
—
AdamO
—
兰德尔