Q de Cochran

# o teste Q de Cochran é usado na mesma situação que o teste de McNemar (ver teste de McNemar para mais detalhes), mais especificamente quando ocorre a comparação de três ou mais pares de variáveis

# Exemplo: Considere três métodos diagnósticos para detectar determinada doença em cães, aplicados em  amostra de 200 animais. Os resultados (dados hipotéticos) foram:

p="positivo"

n="negativo"

método_A=c(rep(p,182),rep(n,18))

método_B=c(rep(p,175),rep(n,25))

método_C=c(rep(p,186),rep(n,14))

# criação de uma tabelas com os dados

tabela1=table(método_A,método_B)

tabela1

tabela2=table(método_A,método_C)

tabela2

tabela3=table(método_B,método_C)

tabela3

 

# pode-se aplicar o teste de McNemar em cada comparação (duas a duas)

mcnemar.test(tabela1)

mcnemar.test(tabela2)

mcnemar.test(tabela3)

 

# observe que ocorreu resultados estatisticamente discordantes (p<0,05) entre os métodos A e B e B e C.

# entre os métodos A e C a discordância é menor e estatisticamente não significativa

 

# o teste Q de Cochran avalia em conjunto todos os métodos e se tiver diferenças significativas, procede-se um pós teste de McNemar

# para realizar o teste requere-se o pacote "RVAideMemoire"

require(RVAideMemoire)

 

# é necessário a identificação dos animais (elementos amostrais) e de alguns ajustes nos dados

método=c(rep("A",200),rep("B",200),rep("C",200))

animal=as.factor(rep(c(1:200),3))

p=1

n=0

método_A=c(rep(p,182),rep(n,18))

método_B=c(rep(p,175),rep(n,25))

método_C=c(rep(p,186),rep(n,14))

resposta=c(método_A,método_B, método_C)

 

# observe como deve ficar o arquivo de dados

dados=data.frame(animal,método,resposta)

dados

 

# aplica-se a função

cochran.qtest(resposta~método|animal, data=dados)

 

# observe que existe diferença entre os métodos e que o resultado do pós teste é praticamente idêntico ao que seria feito par a par pelo teste de McNemar