Qual é a diferença entre o teste exato de Fisher e a regressão logística para tabelas?

10

Para uma tabela , duas maneiras de fazer inferência na tabela são através do teste exato de Fisher e também de uma regressão logística.2×2

Foi-me dito que, usando um teste exato de Fisher, estamos interessados ​​apenas na presença de associação. Mas, com uma regressão logística, estamos interessados ​​na magnitude da associação.

No entanto, eu não entendo o porquê. Por exemplo, no teste exato de Fisher feito em R, ele retorna a Odds Ratio com um intervalo de confiança, enquanto na Regressão Logística, retornamos com a interceptação e a inclinação, as quais correspondem às probabilidades de log e de log. Razão.

Minha pergunta é : onde a regressão logística nos dá a magnitude da associação? Suponho que ele esteja no coeficiente , mas esse é apenas o log odds ratio, que o teste exato de Fisher produz também . Quais são as diferenças?β1

user321627
fonte

Respostas:

2

Não sei ao certo o que a pessoa a quem você se referiu com "Regressão logística nos dá a magnitude da associação", pois, como você declara, o teste exato de Fisher faz algo bastante semelhante. Mas, ainda assim, existem algumas diferenças em que consigo pensar.

1. O odds ratio (OR) pode diferir

O OR sendo relatado não precisa ser o mesmo. Pelo menos isso é verdade para as funções R fisher.test () e exact2x2 () versus regressão logística através da função glm (). Aqui está um exemplo:

# generating data
set.seed(1)
n <- 200
x <- rbinom(n, 1, .5)
y <- rbinom(n, 1, .4)
df <- data.frame(x, y)

# OR from logistic regression
exp(coef(glm(y ~ x,family=binomial(link='logit'),data= df)))[2]
1.423077

# OR from fisher's exact test
tab <- table(x, y)
fisher.test(tab)$estimate
1.420543 # the methods "minlike", "central" and "blaker" in the exact2x2 function result in the same OR

# calculating OR by hand
(tab[1,1]/ tab[2,1])/ (tab[1,2]/ tab[2,2])
1.423077

O OR do teste exato de Fisher difere daqueles calculados manualmente ou relatados em regressão logística, porque são calculados pela Estimativa Máxima de Verossimilhança condicional e não pelo MLE incondicional (amostra OR). Pode haver situações em que os valores OR diferem mais do que no meu exemplo. E, novamente, o OR difere para as funções mencionadas, mas pode haver outras variantes dos testes, caso sejam iguais.

2. valores de p diferem

É claro que os valores de p diferem, pois, no caso de regressão logística, eles são determinados com a estatística de Wald e o valor de az, enquanto existem diferentes tipos de teste exato de Fisher que diferem mesmo nos valores de p entre si (o último link abre pdf). Veja aqui os dados usados ​​antes:

# p value from logistic regression
summary(glm(y ~ x,family=binomial(link='logit'),data= df))$coefficients["x", "Pr(>|z|)"]
0.2457947

# p value from fisher's exact test
library(exact2x2) # package covers different exact fisher's tests, see here https://cran.r-project.org/web/packages/exact2x2/index.html

exact2x2(tab,tsmethod="central")$p.value
0.3116818
exact2x2(tab,tsmethod="minlike")$p.value
0.290994 # which is same as fisher.test(tab)$p.value and exact2x2(tab,tsmethod="blaker")$p.value

Aqui, em todos os casos, concluiríamos que não há efeito significativo. Mas, ainda assim, como você pode ver, as diferenças não são triviais (0,246 para regressão logística versus 0,291 ou mesmo 0,312 para o teste exato de Fisher). Portanto, dependendo de você estar usando regressão logística ou teste exato de Fisher, você pode chegar a outra conclusão se há um efeito significativo ou não.

3. Fazendo uma previsão

Para fazer uma analogia: a correlação de Pearson e a regressão linear são bastante semelhantes nos casos bivariados e o coeficiente de regressão padronizado é igual ao da correlação de Pearson r. Mas você não pode fazer previsões com uma correlação, pois está faltando uma interceptação. Da mesma forma, mesmo que a razão de chances da regressão logística e o teste exato de Fisher fossem os mesmos (o que não é o caso, conforme discutido no ponto 1), você não poderia fazer previsões com os resultados do teste exato de Fisher. Por outro lado, a regressão logística fornece a interceptação e o (s) coeficiente (s) necessário (s) para fazer previsões.

4. Desempenho

As diferenças mencionadas anteriormente podem levar à suposição de que deve haver diferenças no desempenho de ambos os testes em termos de potência e erro do tipo I. Existem algumas fontes afirmando que o teste exato de Fisher é muito conservador. Por outro lado, deve-se ter em mente que a análise de regressão logística padrão é assintótica, portanto, com poucas observações, você provavelmente preferirá o teste exato de Fisher .

Em resumo , embora ambos os testes possam ser usados ​​para os mesmos dados, existem algumas diferenças que podem levar a resultados diferentes e, portanto, a conclusões diferentes. Portanto, depende da situação, qual dos dois testes você deseja usar - em caso de previsão, seria a regressão logística, no caso de amostras pequenas dimensionar o teste exato de Fisher, e assim por diante. Provavelmente existem ainda mais diferenças que deixei de fora, mas talvez alguém possa editá-las e adicioná-las.


fonte