McNemar检验与条件逻辑回归之间的关系


14

我对成对观测中的二进制响应数据建模感兴趣。我们的目的是对小组进行事前干预的有效性进行推断,可能会针对多个协变量进行调整,并确定接受过特别培训的小组作为干预措施的一部分是否会影响效果。

给定以下形式的数据:

id phase resp
1  pre   1
1  post  0
2  pre   0
2  post  0
3  pre   1
3  post  0

和一个的配对响应信息列联表:2×2

正确不正确的发布正确一种b不正确的Cd

我们对假设的检验感兴趣:。H0θC=1个

McNemar的检验给出:在(渐近)。这是直观的,因为在零值下,我们期望不平等对(和)的比例相等,有利于产生积极影响()或消极影响()。以肯定案例定义的概率定义和。观察到正不一致对的几率是。=b-C2b+Cχ1个2H0bCbCp=bb+Cñ=b+Cp1个-p=bC

另一方面,条件逻辑回归使用不同的方法通过最大化条件可能性来检验相同的假设:

大号X;β=Ĵ=1个ñ经验值βXĴ2经验值βXĴ1个+经验值βXĴ2

其中。经验值β=θC

那么,这些测试之间是什么关系?如何对前面介绍的列联表进行简单测试?查看空值下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')

在此处输入图片说明


pb=pC一种d/bC=1个

我似乎记得,可以将McNemar的检验参数化为比值比的检验,所以我不知道该如何写出该检验的似然性(条件似然性?)。
AdamO

我不确定您所指的是McNemar测试的确切版本。Breslow and Day(1980),第127页。164-166和 exact2x2可能是参考。
兰德尔

Answers:


4

抱歉,这是一个老问题,我是偶然发现的。

mcnemar测试的代码中有错误。尝试:

n <- 100
do.one <- function(n) {
  id <- rep(1:n, each=2)
  case <- rep(0:1, times=n)
  rs <- rbinom(n*2, 1, 0.5)
  c(
    'pclogit' = coef(summary(clogit(case ~ rs + strata(id))))[5],
    'pmctest' = mcnemar.test(table(rs[case == 0], rs[case == 1]))$p.value
  )
}

out <- replicate(1000, do.one(n))

在此处输入图片说明


哇!谢谢您,欢迎来到社区。为了澄清起见,McNemar处理不匹配的配对(?),这样的配对是否从clogit中删除了?我看不到mcnemar结果的计算中如何涉及id。也许在这些方面产生关联将有助于阐明clogit在做什么。
AdamO 2014年

2

有2种竞争统计模型。模型1(无效假设,McNemar):纠正错误的概率=纠正错误的概率= 0.5或等效的b = c。模型2:纠正错误的概率<错误纠正的概率或等效值b> c。对于模型2,我们使用最大似然法和逻辑回归确定代表模型2的模型参数。统计方法看起来有所不同,因为每种方法都反映了不同的模型。


您是在说clogit不是两个尾巴的测试吗?
AdamO
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.