Qual é a diferença entre o teste de McNemar e o teste do qui-quadrado e como você sabe quando usar cada um?

30

Tentei ler em fontes diferentes, mas ainda não estou claro qual teste seria o apropriado no meu caso. Há três perguntas diferentes sobre o meu conjunto de dados:

  1. Os sujeitos são testados para infecções de X em momentos diferentes. Quero saber se as proporções de positivo para X depois estão relacionadas à proporção de positivo para X antes:

                 After   
               |no  |yes|
    Before|No  |1157|35 |
          |Yes |220 |13 |
    
    results of chi-squared test: 
    Chi^2 =  4.183     d.f. =  1     p =  0.04082 
    
    results of McNemar's test: 
    Chi^2 =  134.2     d.f. =  1     p =  4.901e-31
    

    Pelo meu entendimento, como os dados são medidas repetidas, devo usar o teste de McNemar, que testa se a proporção de positivo para X mudou.

    Mas minhas perguntas parecem precisar do teste do qui-quadrado - testar se a proporção de positivo para X depois está relacionada à proporção de positivo para X antes.

    Não tenho certeza se entendi a diferença entre o teste de McNemar e o qui-quadrado corretamente. Qual seria o teste certo se minha pergunta fosse: "A proporção de indivíduos infectados com X depois de diferente de antes?"

  2. Um caso semelhante, mas onde, em vez de antes e depois, eu medo duas infecções diferentes em um ponto no tempo:

            Y   
          |no  |yes|
    X|No  |1157|35 |
     |Yes |220 |13 |
    

    Qual teste estaria aqui se a pergunta for "Proporções mais altas de uma infecção se relacionam a proporções mais altas de Y"?

  3. Se minha pergunta era: "A infecção Y no momento t2 está relacionada à infecção X no tempo t1?", Que teste seria apropriado?

                  Y at t2   
                |no  |yes|
    X at t1|No  |1157|35 |
           |Yes |220 |13 |
    

Eu estava usando o teste de McNemar em todos esses casos, mas tenho minhas dúvidas se esse é o teste certo para responder às minhas perguntas. Estou usando R. Posso usar um binômio glm? Isso seria análogo ao teste do qui-quadrado?

Anto
fonte
1
Você tentou ler os tópicos stats.stackexchange.com/questions/tagged/mcnemar-test aqui no teste de Mcnemar?
ttnphns
O que você quer dizer com "relação entre duas probabilidades"?
Michael M
@ttnphns Eu passei por eles, mas não consegui reformulá-lo para a minha pergunta. Depois de mais pensar, parece que posso responder a duas perguntas com base no Q1: o qui-quadrado me diria se a proporção de + ve X depois está relacionada à proporção de + ve X antes, enquanto a de Mcnemar me diria se houve uma mudança nas proporções. Estou certo?
Anto
Você não pode usar um de independência padrão aqui porque cada pessoa é representada por dois valores, causando amostras não aleatórias. χ2
Michael M
Obrigado @MichaelMayer. Eu estava usando o Mcnemar's até que vi isso . Onde o Mcnemar's é explicado, ele diz o que fazer um Chi-sq responderia no mesmo caso. Estou bastante perplexo. A forma como cada teste nos diz está enquadrada nesta página, devo escolher o qui-quadrado, mas como são medidas no mesmo assunto, devo escolher o de McNemar!
Anto #

Respostas:

48

É uma pena que o teste de McNemar seja tão difícil para as pessoas entenderem. Eu até percebo que no topo de sua página da Wikipedia afirma que a explicação na página é difícil para as pessoas entenderem. A explicação curta e típica para o teste de McNemar é: "um teste qui-quadrado dentro dos sujeitos" ou "um teste da homogeneidade marginal de uma tabela de contingência". Acho que nenhum deles é muito útil. Primeiro, não está claro o que se entende por 'qui-quadrado dentro dos sujeitos', porque você está sempre medindo seus assuntos duas vezes (uma vez em cada variável) e tentando determinar a relação entre essas variáveis. Além disso, 'homogeneidade marginal' (Tragicamente, mesmo essa resposta pode ser confusa. Se for, pode ajudar a ler minha segunda tentativa abaixo.)

Vamos ver se podemos trabalhar com um processo de raciocínio sobre o seu exemplo principal para ver se conseguimos entender se (e se sim, por que) o teste de McNemar é apropriado. Você colocou:

insira a descrição da imagem aqui

Esta é uma tabela de contingência, portanto, conota uma análise qui-quadrado. Além disso, você deseja entender a relação entre e , e o teste qui-quadrado verifica uma relação entre as variáveis. Portanto, à primeira vista, parece que o teste qui-quadrado deve ser o análise que responde à sua pergunta. BeforeAfter

No entanto, vale ressaltar que também podemos apresentar esses dados da seguinte forma:

insira a descrição da imagem aqui

Quando você olha para os dados dessa maneira, pode pensar que poderia fazer um teste antigo e regular . Mas um teste não está certo. Há dois problemas: primeiro, porque cada linha lista os dados medidos do mesmo assunto, não gostaríamos de fazer um teste entre sujeitos , gostaríamos de fazer um teste dentro dos sujeitos . Segundo, como esses dados são distribuídos como um binômio , a variação é uma função da média. Isso significa que não há incerteza adicional com a qual se preocupar uma vez que a média da amostra tenha sido estimada (ou seja, você não precisa estimar subsequentemente a variação); portanto, você não precisa se referir à distribuição ;tttttzdistribuição. (Para saber mais sobre isso, ele pode ajudar a ler a minha resposta aqui: O -teste vs. a testezχ2 ). Assim, seria necessário um intra-sujeitos -teste. Ou seja, precisamos de um teste interno da igualdade de proporções. z

Vimos que existem duas maneiras diferentes de pensar e analisar esses dados (estimuladas por duas maneiras diferentes de ver os dados). Então, precisamos decidir de que maneira devemos usar. O teste do qui-quadrado avalia se e são independentes. Ou seja, são as pessoas que estavam doentes anteriormente com maior probabilidade de ficarem doentes depois do que as pessoas que nunca estiveram doentes. É extremamente difícil ver como não seria esse o caso, uma vez que essas medidas são avaliadas nos mesmos assuntos. Se você obteve um resultado não significativo (como quase o faz), isso seria simplesmente um erro do tipo II. Em vez de se eBeforeAfterBeforeAfterSe você é independente, você quase certamente quer saber se o tratamento funciona (uma pergunta que o qui-quadrado não responde). Isso é muito semelhante a qualquer número de tratamentos versus estudos de controle nos quais você deseja ver se as médias são iguais, exceto que, neste caso, suas medidas são sim / não e são assuntos dentro do indivíduo. Considere uma situação mais típica do teste com a pressão arterial medida antes e depois de algum tratamento. Aqueles cujo pb estava acima da média da amostra anteriormente certamente tendem a estar entre os pb mais altos depois, mas você não quer saber sobre a consistência das classificações, mas se o tratamento levou a uma mudança no pb médio . Sua situação aqui é diretamente análoga. Especificamente, você deseja executar um dentro de assuntostz-teste de igualdade de proporções. É isso que é o teste de McNemar.

Então, tendo percebido que queremos realizar o teste de McNemar, como funciona? Executar um teste entre sujeitos é fácil, mas como executamos uma versão dentro dos sujeitos? A chave para entender como fazer um teste de proporções dentro dos sujeitos é examinar a tabela de contingência, que decompõe as proporções:z

AfterNoYestotalBeforeNo1157351192Yes22013233total1377481425
Before proporções são os totais de linha divididos pelo total geral e as proporções são os totais da coluna divididos pelo total geral. Quando olhamos para a tabela de contingência, podemos ver que são, por exemplo: O que é interessante notar aqui é queAfter
Before proportion yes=220+131425,After proportion yes=35+131425
13as observações foram sim, antes e depois. Eles acabam como parte de ambas as proporções, mas, como resultado de ambos os cálculos, não adicionam informações distintas sobre a mudança na proporção de sim. Além disso, eles são contados duas vezes, o que é inválido. Da mesma forma, o total geral termina nos dois cálculos e não adiciona informações distintas. Ao decompor as proporções, somos capazes de reconhecer que as únicas informações distintas sobre as proporções antes e depois dos yeses existem nos e , portanto esses são os números que precisamos analisar. Essa foi a visão de McNemar. Além disso, ele percebeu que, sob o nulo, este é um teste binomial de contra uma proporção nula de22035220/(220+35).5. (Existe uma formulação equivalente que é distribuída como um qui-quadrado, que é o que Rproduz.)

Há outra discussão sobre o teste de McNemar, com extensões para tabelas de contingência maiores que 2x2, aqui .


Aqui está uma Rdemonstração com seus dados:

mat = as.table(rbind(c(1157, 35), 
                     c( 220, 13) ))
colnames(mat) <- rownames(mat) <- c("No", "Yes")
names(dimnames(mat)) = c("Before", "After")
mat
margin.table(mat, 1)
margin.table(mat, 2)
sum(mat)

mcnemar.test(mat, correct=FALSE)
#  McNemar's Chi-squared test
# 
# data:  mat
# McNemar's chi-squared = 134.2157, df = 1, p-value < 2.2e-16
binom.test(c(220, 35), p=0.5)
#  Exact binomial test
# 
# data:  c(220, 35)
# number of successes = 220, number of trials = 255, p-value < 2.2e-16
# alternative hypothesis: true probability of success is not equal to 0.5
# 95 percent confidence interval:
#  0.8143138 0.9024996
# sample estimates:
# probability of success 
#              0.8627451 

Se não levássemos em consideração a natureza dos sujeitos dentro dos seus dados, teríamos um teste um pouco menos poderoso da igualdade de proporções:

prop.test(rbind(margin.table(mat, 1), margin.table(mat, 2)), correct=FALSE)
#  2-sample test for equality of proportions without continuity
#  correction
# 
# data:  rbind(margin.table(mat, 1), margin.table(mat, 2))
# X-squared = 135.1195, df = 1, p-value < 2.2e-16
# alternative hypothesis: two.sided
# 95 percent confidence interval:
#  0.1084598 0.1511894
# sample estimates:
#    prop 1    prop 2 
# 0.9663158 0.8364912 

Ou seja, em X-squared = 133.6627vez de chi-squared = 134.2157. Nesse caso, eles diferem muito pouco, porque você tem muitos dados e apenas casos se sobrepõem, conforme discutido acima. (Outro problema, e mais importante, aqui é que isso conta seus dados duas vezes, ou seja, , em vez de ) N =13N = 1425N=2850N=1425


Aqui estão as respostas para suas perguntas concretas:

  1. A análise correta é o teste de McNemar (como discutido extensivamente acima).
  2. Esta versão é mais complicada, e o fraseado "proporções mais altas de uma infecção se relaciona a proporções mais altas de Y" é ambíguo. Há duas perguntas possíveis:

    • É perfeitamente razoável querer saber se os pacientes que recebem uma das infecções tendem a receber a outra, caso em que você usaria o teste de independência do qui-quadrado. Esta pergunta está perguntando se a suscetibilidade às duas infecções diferentes é independente (talvez porque sejam contraídas por diferentes vias fisiológicas) ou não (talvez elas sejam contraídas devido a um sistema imunológico geralmente enfraquecido).
    • Também é perfeitamente razoável saber o que saber se a mesma proporção de pacientes tende a receber as duas infecções; nesse caso, você usaria o teste de McNemar. A questão aqui é se as infecções são igualmente virulentas.
  3. Como esta é mais uma vez a mesma infecção, é claro que eles estarão relacionados. Entendo que esta versão não é antes e depois de um tratamento, mas apenas em algum momento posterior. Assim, você está perguntando se as taxas de infecção em segundo plano estão mudando organicamente, o que é novamente uma pergunta perfeitamente razoável. De qualquer forma, a análise correta é o teste de McNemar.
    Edit: Parece que eu interpretei mal sua terceira pergunta, talvez devido a um erro de digitação. Agora eu o interpreto como duas infecções diferentes em dois momentos separados. Sob essa interpretação, o teste do qui-quadrado seria apropriado.
- Reinstate Monica
fonte
@Alexis Até onde eu sei, você e Gung parecem estar conversando. Mesmo o chamado teste t "amostras não pareadas" ou "amostras independentes", ou o "one-way" ou "amostras independentes ANOVA", na verdade, exige dados emparelhados no sentido do gung: para cada sujeito, você deve registrar um grupo categórico variável de associação e uma variável de resultado contínuo . (Se a variável de associação ao grupo tiver dois níveis, geralmente usamos o teste t não emparelhado; para mais de 3 níveis, é necessária uma ANOVA unidirecional).
Silverfish
2
Ao explicar qual teste usar, mostro as duas maneiras de analisá-lo - se você tiver observações de uma variável contínua, uma para cada sujeito, e os sujeitos vierem de 2 (ou mais de 3) grupos e você estiver interessado em diferenças entre grupos, use o teste t de amostras independentes (ou ANOVA unidirecional). Em seguida, confirme sua escolha observando sua tabela de dados: você tem, para cada sujeito, duas informações: categoria para associação ao grupo e a variável contínua. Podemos até mudar as coisas e dizer que o teste t é um tipo de teste de associação entre a variável binária e a contínua.
Silverfish
2
O teste t emparelhado (ou amostras correlatas ANOVA) será usado se, para cada sujeito, você tiver duas (ou mais de 3) leituras contínuas, feitas sob condições diferentes, e desejar testar as diferenças entre as condições. Isso é "emparelhado" em um sentido diferente. Mas nesta questão, temos duas variáveis ​​categóricas registradas para cada sujeito. Observando a tabela de dados, os valores registrados dessas variáveis ​​categóricas devem vir em pares. Mas isso não significa que o próprio desenho do estudo esteja emparelhado. Isso é confuso (como notas de apoio). Mas se você sabe que seu desenho do estudo, isso pode resolvê-lo (como Alexis notas)
Silverfish
@ Silverfish Se você fez duas observações (da mesma variável nominal) sobre cada assunto, em que sentido isso não é um projeto emparelhado?
Alexis12
1
@ Alexis É aquela "da mesma variável" que é fundamental - e potencialmente confusa. Você pode saber que representa a mesma variável, embora em condições diferentes ou em momentos diferentes, mas, dependendo da maneira como organizamos a tabela de dados, elas podem parecer gravadas como variáveis ​​diferentes (por exemplo, um "antes" e "depois" separados. variável).
Silverfish
22

Bem, parece que eu fiz uma mistura disso. Deixe-me tentar explicar isso novamente, de uma maneira diferente e veremos se isso pode ajudar a esclarecer as coisas.

A maneira tradicional de explicar o teste de McNemar versus o teste do qui-quadrado é perguntar se os dados estão "emparelhados" e recomendar o teste de McNemar se os dados estão emparelhados e o teste do qui-quadrado se os dados estão "não emparelhados". Eu descobri que isso leva a muita confusão (esse tópico é um exemplo!). Em vez disso, descobri que é mais útil focar na pergunta que você está tentando fazer e usar o teste que corresponde à sua pergunta. Para tornar isso mais concreto, vejamos um cenário inventado:

Você anda por uma conferência de estatística e, para cada estatístico que conhece, registra se são dos EUA ou do Reino Unido. Você também registra se eles têm pressão alta ou pressão normal.

Aqui estão os dados:

mat = as.table(rbind(c(195,   5),
                     c(  5, 195) ))
colnames(mat)        = c("US", "UK")
rownames(mat)        = c("Hi", "Normal")
names(dimnames(mat)) = c("BP", "Nationality")
mat
#         Nationality
# BP        US  UK
#   Hi     195   5
#   Normal   5 195

Neste ponto, é importante descobrir que pergunta queremos fazer sobre nossos dados. Há três perguntas diferentes que poderíamos fazer aqui:

  1. Podemos querer saber se as variáveis categóricas BPe Nationalityestão associados ou independente;
  2. Podemos nos perguntar se a pressão alta é mais comum entre os estatísticos dos EUA do que entre os estatísticos do Reino Unido;
  3. Finalmente, podemos nos perguntar se a proporção de estatísticos com pressão alta é igual à proporção de estatísticos dos EUA com quem conversamos. Isso se refere às proporções marginais da tabela. Eles não são impressos por padrão em R, mas podemos obtê-los assim (observe que, nesse caso, eles são exatamente os mesmos):

    margin.table(mat, 1)/sum(mat)
    # BP
    #    Hi Normal 
    #   0.5    0.5 
    margin.table(mat, 2)/sum(mat)
    # Nationality
    #  US  UK 
    # 0.5 0.5 
    

Como eu disse, a abordagem tradicional, discutida em muitos livros, é determinar qual teste usar com base em se os dados estão "emparelhados" ou não. Mas isso é muito confuso, essa tabela de contingência está "emparelhada"? Se compararmos a proporção com pressão alta entre estatísticos dos EUA e do Reino Unido, você estará comparando duas proporções (embora com a mesma variável) medidas em diferentes grupos de pessoas. Por outro lado, se você deseja comparar a proporção com pressão alta com a proporção US, você está comparando duas proporções (embora de variáveis ​​diferentes) medidas no mesmo conjunto de pessoas. Esses dados são ambos"emparelhado" e "não emparelhado" ao mesmo tempo (embora com relação a diferentes aspectos dos dados). Isso leva à confusão. Para tentar evitar essa confusão, argumento que você deve pensar em termos de qual pergunta está fazendo. Especificamente, se você deseja saber:

  1. Se as variáveis ​​forem independentes: use o teste do qui-quadrado.
  2. Se a proporção com pressão alta diferir por nacionalidade: use o teste z para obter diferenças de proporções.
  3. Se as proporções marginais são as mesmas: use o teste de McNemar.

Alguém pode discordar de mim aqui, argumentando que, como a tabela de contingência não está "emparelhada", o teste de McNemar não pode ser usado para testar a igualdade das proporções marginais e que o teste do qui-quadrado deve ser usado. Como esse é o ponto de discórdia, vamos tentar os dois para ver se os resultados fazem sentido:

chisq.test(mat)
#  Pearson's Chi-squared test with Yates' continuity correction
# 
# data:  mat
# X-squared = 357.21, df = 1, p-value < 2.2e-16
mcnemar.test(mat)
#  McNemar's Chi-squared test
# 
# data:  mat
# McNemar's chi-squared = 0, df = 1, p-value = 1

O teste do qui-quadrado gera um valor-p de aproximadamente 0. Ou seja, diz que a probabilidade de obter dados tão longe ou mais de proporções marginais iguais, se as proporções marginais realmente eram iguais é essencialmente 0. Mas as proporções marginais são exatamente o mesmo, , como vimos acima! Os resultados do teste do qui-quadrado simplesmente não fazem nenhum sentido à luz dos dados. Por outro lado, o teste de McNemar gera um valor-p igual a 1. Ou seja, ele diz que você terá 100% de chance de encontrar proporções marginais tão próximas da igualdade ou mais afastadas da igualdade, se as verdadeiras proporções marginais forem iguais. Como as proporções marginais observadas não podem ser mais próximas do que são, esse resultado faz sentido. 50%=50%

Vamos tentar outro exemplo:

mat2 = as.table(rbind(c(195, 195),
                      c(  5,   5) ))
colnames(mat2)        = c("US", "UK")
rownames(mat2)        = c("Hi", "Normal")
names(dimnames(mat2)) = c("BP", "Nationality")
mat2
#         Nationality
# BP        US  UK
#   Hi     195 195
#   Normal   5   5
margin.table(mat2, 1)/sum(mat2)
# BP
#     Hi Normal 
#  0.975  0.025 
margin.table(mat2, 2)/sum(mat2)
# Nationality
#  US  UK 
# 0.5 0.5 

Nesse caso, as proporções marginais são muito diferentes, . Vamos tentar os dois testes novamente para ver como seus resultados se comparam à grande diferença observada em proporções marginais: 97.5%50%

chisq.test(mat2)
#  Pearson's Chi-squared test
# 
# data:  mat2
# X-squared = 0, df = 1, p-value = 1
mcnemar.test(mat2)
#  McNemar's Chi-squared test with continuity correction
# 
# data:  mat2
# McNemar's chi-squared = 178.605, df = 1, p-value < 2.2e-16

Desta vez, o teste do qui-quadrado fornece um valor-p de 1, significando que as proporções marginais são tão iguais quanto possível. Mas vimos que as proporções marginais obviamente não são iguais, portanto esse resultado não faz sentido à luz de nossos dados. Por outro lado, o teste de McNemar gera um valor-p de aproximadamente 0. Em outras palavras, é extremamente improvável obter dados com proporções marginais tão distantes da igualdade quanto essas, se eles realmente são iguais na população. Como nossas proporções marginais observadas estão longe de serem iguais, esse resultado faz sentido.

O fato de o teste qui-quadrado produzir resultados que não fazem sentido, dados nossos dados, sugere que há algo errado em usar o teste qui-quadrado aqui. Certamente, o fato de o teste de McNemar fornecer resultados sensatos não prova que é válido, pode ter sido apenas uma coincidência, mas o teste do qui-quadrado está claramente errado.

Vamos ver se podemos trabalhar com o argumento de por que o teste de McNemar pode ser o correto. Vou usar um terceiro conjunto de dados:

mat3 = as.table(rbind(c(190,  15),
                      c( 60, 135) ))
colnames(mat3)        = c("US", "UK")
rownames(mat3)        = c("Hi", "Normal")
names(dimnames(mat3)) = c("BP", "Nationality")
mat3
#         Nationality
# BP        US  UK
#   Hi     190  15
#   Normal  60 135
margin.table(mat3, 1)/sum(mat3)
# BP
#     Hi Normal 
# 0.5125 0.4875 
margin.table(mat3, 2)/sum(mat3)
# Nationality
#    US    UK 
# 0.625 0.375 

Desta vez, queremos comparar a e nos perguntar se na população as verdadeiras proporções marginais podem ter sido as mesmas. Como estamos comparando duas proporções, a opção mais intuitiva seria usar um teste z para a igualdade de duas proporções. Podemos tentar isso aqui: 62,5 %51.25%62.5%

prop.test(x=c(205, 250), n=c(400, 400))
#  2-sample test for equality of proportions with continuity correction
# 
# data:  c(205, 250) out of c(400, 400)
# X-squared = 9.8665, df = 1, p-value = 0.001683
# alternative hypothesis: two.sided
# 95 percent confidence interval:
#   -0.18319286 -0.04180714
# sample estimates:
# prop 1 prop 2 
# 0.5125 0.6250 

(Para prop.test()testar as proporções marginais, tive que inserir manualmente os números de 'sucessos' e o número total de 'tentativas', mas você pode ver na última linha da saída que as proporções estão corretas.) Isso sugere que é improvável que obtenha proporções marginais tão distantes da igualdade se elas forem realmente iguais, dada a quantidade de dados que temos.

Este teste é válido? Existem dois problemas aqui: O teste acredita que temos 800 dados, quando na verdade temos apenas 400. Esse teste também não leva em conta que essas duas proporções não são independentes, no sentido de que foram medidas nas mesmas pessoas.

Vamos ver se podemos desmontar isso e encontrar outro caminho. Na tabela de contingência, podemos ver que as proporções marginais são: O que vemos aqui é que os estatísticos americanos com pressão alta aparecem em ambas as proporções marginais. Ambos estão sendo contados duas vezes e não contribuem com informações sobre as diferenças nas proporções marginais. Além disso, o total de aparece nos dois denominadores também. Todas as informações exclusivas e distintas estão nas duas contagens de células fora da diagonal ( e
1904001560π=0,5

% high BP: 190+15400% US: 190+60400
1904001560) Se as proporções marginais são iguais ou diferentes, deve-se apenas a elas. A probabilidade de uma observação cair igualmente em uma dessas duas células é distribuída como um binômio com probabilidade sob o nulo. Essa foi a visão de McNemar. De fato, o teste de McNemar é essencialmente apenas um teste binomial de se as observações têm a mesma probabilidade de cair nessas duas células: π=.5
binom.test(x=15, n=(15+60))
#  Exact binomial test
# 
# data:  15 and (15 + 60)
# number of successes = 15, number of trials = 75, p-value = 1.588e-07
# alternative hypothesis: true probability of success is not equal to 0.5
# 95 percent confidence interval:
#   0.1164821 0.3083261
# sample estimates:
# probability of success 
#                    0.2 

Nesta versão, apenas as observações informativas são usadas e não são contadas duas vezes. O valor p aqui é muito menor, 0,0000001588, o que geralmente ocorre quando a dependência nos dados é levada em consideração. Ou seja, esse teste é mais poderoso que o teste z de diferença de proporções. Podemos ver ainda que a versão acima é essencialmente a mesma do teste de McNemar:

mcnemar.test(mat3, correct=FALSE)
#  McNemar's Chi-squared test
# 
# data:  mat3
# McNemar's chi-squared = 27, df = 1, p-value = 2.035e-07

Se a não-identidade for confusa, o teste de McNemar normalmente, e em R, compara o resultado com a distribuição qui-quadrado, que não é um teste exato como o binômio acima:

(15-60)^2/(15+60)
# [1] 27
1-pchisq(27, df=1)
# [1] 2.034555e-07

Portanto, quando você deseja verificar se as proporções marginais de uma tabela de contingência são iguais, o teste de McNemar (ou o teste binomial exato calculado manualmente) está correto. Ele usa apenas as informações relevantes sem usar ilegalmente dados duas vezes. Não apenas 'acontece' produzir resultados que entendam os dados.

Continuo acreditando que tentar descobrir se uma tabela de contingência está "emparelhada" é inútil. Sugiro usar o teste que corresponde à pergunta que você está fazendo dos dados.

- Reinstate Monica
fonte
1
Você conseguiu meu voto. :)
Alexis
11

A questão de qual teste usar, tabela de contingência versus McNemar de uma hipótese nula de não associação entre duas variáveis ​​binárias é simplesmente uma questão de saber se seus dados estão emparelhados / dependentes ou não emparelhados /independente: χ 2χ2χ2

Dados binários em duas amostras independentes
Nesse caso, você usaria um tabela de contingência .χ2

Por exemplo, você pode ter uma amostra de 20 estatísticos dos EUA e uma amostra independente separada de 37 estatísticos do Reino Unido e avaliar se esses estatísticos são hipertensos ou normotensos. Sua hipótese nula é que os estatísticos do Reino Unido e dos EUA têm a mesma probabilidade subjacente de serem hipertensos (ou seja, saber se alguém é dos EUA ou do Reino Unido não diz nada sobre a probabilidade de hipertensão). Obviamente, é possível que você possa ter o mesmo tamanho de amostra em cada grupo, mas isso não altera o fato de as amostras serem independentes (ou seja, não emparelhadas ).

Dados binários em amostras emparelhadas
Nesse caso, você usaria o teste McNemar .χ2

Por exemplo, você pode ter dados de estudo de caso-controle comparados individualmente, amostrados de uma conferência internacional de estatísticos, onde 30 estatísticos com hipertensão (casos) e 30 estatísticos sem hipertensão (controles), que correspondem individualmente por idade, sexo, IMC e tabagismo para casos particulares), são avaliados retrospectivamente quanto à residência profissional no Reino Unido versus residência em outro lugar. O nulo é que a probabilidade de residir no Reino Unido entre os casos é a mesma que a probabilidade de residir no Reino Unido como controles (ou seja, que conhecer o status de hipertensão não diz nada sobre o histórico de residência no Reino Unido).

De fato, o teste de McNemar analisa pares de dados . Especificamente, analisa pares discordantes. Assim, o e a partir de são contagens de pares discordantes .s χ 2 = [ ( r - s ) - 1 ] 2rsχ2=[(rs)1]2(r+s)

Anto, no seu exemplo, seus dados são pareados (mesma variável medida duas vezes no mesmo assunto) e, portanto, o teste de McNemar é a escolha apropriada de teste para associação.

[Gung e eu discordamos por um tempo sobre uma resposta anterior.]

Referências citadas
"Supondo que ainda estamos interessados ​​em comparar proporções, o que podemos fazer se nossos dados forem emparelhados, e não independentes? ... Nesta situação, usamos o teste de McNemar." - Pagano e Gauvreau, Princípios de Bioestatística , 2ª. edição, página 349. [ Ênfase adicionada ]

"A expressão é mais conhecida como estatística de teste de par combinado de McNemar (McNemar, 1949) e tem sido um dos pilares da análise de par combinado ." - Rothman, Greenland & Lash. Epidemiologia moderna , página 286. [ Ênfase adicionada ]

"O teste t pareado e medidas repetidas de análise de variância podem ser usadas para analisar experimentos nos quais a variável em estudo pode ser medida em uma escala de intervalo (e satisfaz outras premissas exigidas pelos métodos paramétricos). E os experimentos, análogos aos no capítulo 5, onde o resultado é medido em uma escala nominal ? Esse problema geralmente surge quando se pergunta se um indivíduo respondeu ou não a um tratamento ou quando compara os resultados de dois testes de diagnóstico diferentes classificados como positivos ou negativos nos mesmos indivíduos Vamos desenvolver um procedimento para analisar esses experimentos, o teste de Mcnemar para mudanças , no contexto de um desses estudos. "- Glanz, Primer of Biostatisticsχ2

"Para dados de controle de caso combinados com um controle por caso , a análise resultante é simples e o teste estatístico apropriado é o teste qui-quadrado de McNemar ... observe que, para o cálculo da razão de chances e da estatística, os únicos contribuidores são os pares que são díspares em exposição , ou seja, os pares onde o caso foi exposto, mas o controle não foi, e aqueles onde o controle foi exposto, mas o caso não foi. "- Elwood. Avaliação crítica de estudos epidemiológicos e ensaios clínicos , 1ª edição, páginas 189–190. [ Ênfase adicionada ]

Alexis
fonte
7

Meu entendimento do teste de McNemar é o seguinte: É usado para ver se uma intervenção fez uma diferença significativa para um resultado binário. No seu exemplo, um grupo de sujeitos é verificado quanto à infecção e a resposta é registrada como sim ou não. Todos os sujeitos recebem alguma intervenção, digamos um antibiótico. Eles são verificados novamente quanto à infecção e a resposta é registrada como sim / não novamente. As (pares de) respostas podem ser colocadas na tabela de contingência:

             After   
           |no  |yes|
Before|No  |1157|35 |
      |Yes |220 |13 |

E o teste de McNemar seria apropriado para isso.

Fica claro na tabela que muitos mais foram convertidos de 'sim' para 'não' (220 / (220 + 13) ou 94,4%) do que de 'não' para 'sim' (35 / (1157 + 35) ou 2,9 %) Considerando essas proporções, o valor de P de McNemar (4,901e-31) parece mais correto que o valor de p do qui-quadrado (0,04082).

Se a tabela de contigência representar 2 infecções diferentes (questão 2), o qui-quadrado seria mais apropriado.

Sua terceira pergunta é ambígua: você primeiro afirma que relaciona Y em t2 com Y em t1, mas na tabela você escreve 'X' em t1 vs Y em t2. Y em t2 vs Y em t1 é o mesmo que sua primeira pergunta e, portanto, o teste de McNemar é necessário, enquanto X em t1 e Y em t2 indicam que diferentes eventos estão sendo comparados e, portanto, o qui-quadrado será mais apropriado.

Edit: Como mencionado por Alexis no comentário, os dados de controle de caso correspondentes também são analisados ​​pelo teste de McNemar. Por exemplo, 1425 pacientes com câncer são recrutados para um estudo e para cada paciente também é recrutado um controle correspondente. Todos estes (1425 * 2) são verificados quanto à infecção. Os resultados de cada par podem ser mostrados por tabela semelhante:

             Normal   
           |no  |yes|
Cancer|No  |1157|35 |
      |Yes |220 |13 |

Mais claramente:

                                    Normal:
                                    No infection   Infection  
Cancer patient:     No infection    1157            35      
                    Infection       220             13      

Isso mostra que é muito mais frequente que o paciente com câncer tenha tido infecção e controle, e não o contrário. Seu significado pode ser testado pelo teste de McNemar.

Se esses pacientes e controles não foram pareados e independentes, só é possível fazer a tabela a seguir e fazer um teste no quadrilátero:

            Infection
            No    Yes
Cancer  No  1377   48
        Yes 1192  233

Mais claramente:

                No infection        Infection
No cancer       1377                48
Cancer          1192                233

Observe que esses números são iguais às margens da primeira tabela:

> addmargins(mat)
      After
Before   No  Yes  Sum
   No  1157   35 1192
   Yes  220   13  233
   Sum 1377   48 1425

Essa deve ser a razão do uso de termos como 'frequências marginais' e 'homogeneidade marginal' no teste de McNemar.

Curiosamente, a função addmargins também pode ajudar a decidir qual teste usar. Se o total geral for metade do número de sujeitos observados (indicando que o emparelhamento foi realizado), o teste de McNemar é aplicável, caso contrário, o teste do quadrilátero é apropriado:

> addmargins(mat)
      Normal
Cancer   No  Yes  Sum
   No  1157   35 1192
   Yes  220   13  233
   Sum 1377   48 1425
> 
> addmargins(mat3)
      Infection
Cancer   No  Yes  Sum
   No  1377   48 1425
   Yes 1192  233 1425
   Sum 2569  281 2850

Os códigos R para as tabelas acima são as das respostas acima:

mat = as.table(rbind(c(1157, 35), 
                      c( 220, 13) ))
colnames(mat) <- rownames(mat) <- c("No", "Yes")
names(dimnames(mat)) = c("Cancer", "Normal")

mat3 = as.table(rbind(c(1377, 48), 
                     c(1192, 233) ))
colnames(mat3) <- rownames(mat3) <- c("No", "Yes")
names(dimnames(mat3)) = c("Cancer", "Infection")

O pseudocódigo a seguir também pode ajudar a saber a diferença:

subject_id      result_first_observation    result_second_observation   
1               no                          yes                     
2               yes                         no                      
...

mcnemar.test(table(result_first_observation, result_second_observation))



pair_id     result_case_subject     result_control_subject  
1           no                      yes                     
2           yes                     no                      
...

mcnemar.test(table(result_case_subject, result_control_subject))



subject_id      result_first_test       result_second_test
1               yes                     no
2               no                      yes
..

chisq.test(table(result_first_test, result_second_test))

Editar:

mid-pé interessante a variação do teste de McNemar ( https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3716987/ ). Ele compara be cda tabela de contingência, ou seja, número que mudou de sim para não versus número que mudou de não para sim (ignorando o número daqueles que permaneceram sim ou não durante o estudo). Pode ser realizado usando o teste binomial em python, como mostrado em https://gist.github.com/kylebgorman/c8b3fb31c1552ecbaafb

Poderia ser equivalente a binom.test(b, b+c, 0.5)uma vez que, em uma mudança aleatória, seria de esperar bque fosse igual a c.

rnso
fonte
3
Não apenas para análise de intervenção: é usado para analisar dados de controle de caso correspondentes em um sentido observacional.
Alexis
Dada a descrição / configuração anterior à tabela para o terceiro trimestre, suspeito que o "X" seja um erro de digitação, mas isso foi um bom problema e essa é uma contribuição útil para o segmento +1.
gung - Restabelece Monica
@mso Editado Q3. é X em t1! caso contrário, como você diz, não é diferente do primeiro trimestre. esse Q tem mais de um ano e fica surpreso ao ver alguém voltar com os mesmos pensamentos que me confundiram. Seguindo com muito interesse!
Anto
Minhas desculpas, o OP esclareceu Q3, evidentemente são 2 doenças diferentes em 2 momentos diferentes. Mais uma vez, boa captura.
gung - Restabelece Monica