Sono interessato alla modellazione dei dati di risposta binaria in osservazioni accoppiate. Il nostro obiettivo è quello di dedurre l'efficacia di un intervento pre-post in un gruppo, adattandoci potenzialmente per diverse covariate e determinando se vi sia una modifica dell'effetto da parte di un gruppo che ha ricevuto una formazione particolarmente diversa nell'ambito di un intervento.
Dati dati del seguente modulo:
id phase resp
1 pre 1
1 post 0
2 pre 0
2 post 0
3 pre 1
3 post 0
E una tabella di contingenza informazioni di risposta accoppiate:
Siamo interessati al test di ipotesi: .
Il test di McNemar dà: sottoH0(asintoticamente). Questo è intuitivo perché, sotto il nulla, ci aspetteremmo che una proporzione uguale delle coppie discordanti (bec) favorisca un effetto positivo (b) o un effetto negativo (c). Con la probabilità di definizione del caso positivo definitap=b en=b+c. La probabilità di osservare una coppia discordante positiva èp .
D'altra parte, la regressione logistica condizionale utilizza un approccio diverso per testare la stessa ipotesi, massimizzando la probabilità condizionale:
dove .
Quindi, qual è la relazione tra questi test? Come si può fare un semplice test della tabella di contingenza presentata in precedenza? Guardando la calibrazione dei valori di p da clogit e gli approcci di McNemar sotto zero, penseresti che fossero completamente indipendenti!
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')
exact2x2
possono essere riferimenti.