Considere la siguiente regresión binomial:
# Create some data
set.seed(10)
n <- 500
x <- runif(n,0,100)
y <- x + rnorm(n,sd=100) < 0
# Fit a binomial regression model
model <- glm(y ~ x, family="binomial")
summary(model)
La summary
función devuelve un valor p de 1.03e-05
. Cuando se usa anova.glm
, se obtienen valores p ligeramente más extremos, independientemente del método utilizado para calcular el valor p.
anova(model, test="Rao") # p.value = 7.5e-6
anova(model, test="LRT") # p.value = 6.3e-6
anova(model, test="Chisq") # p.value = 6.3e-6
¿El valor p de la summary
función se aplica a la misma hipótesis que los devueltos por la anova
función? En caso afirmativo, ¿cómo summary
calculó este valor p y es posible realizar el mismo cálculo directamente con anova
?
Respuestas:
Puede ayudarlo a leer mi respuesta aquí: ¿Por qué mis valores p difieren entre la salida de regresión logística, la prueba de chi-cuadrado y el intervalo de confianza para el OR? Su pregunta aquí es casi un duplicado de eso, pero hay un par de elementos adicionales en su pregunta que pueden abordarse.
Como señala @CliffAB, los valores p en lat 0 0 t
summary.glm()
salida son de las pruebas de Wald. Estos son análogos a las pruebas de coeficientes para un modelo lineal, ya que son la diferencia entre el valor ajustado del coeficiente y el valor de referencia (tomado como ), dividido por el error estándar. La diferencia es que estos se toman para ser distribuidos como un estándar normal en lugar de . Por otro lado, estos son válidos para muestras grandes y no necesariamente sabemos qué constituye una 'muestra grande' en ningún caso.El uso
anova.glm()
le da acceso a diferentes pruebas. Cuando configuratest="Rao"
, le da el valor p de una prueba de puntaje. Y cuando establece cualquieratest="Chisq"
otest="LRT"
(son lo mismo), le da el valor p de una prueba de razón de probabilidad.La
anova.glm()
función prueba la misma hipótesis nula que la prueba de Wald en lasummary()
salida en este caso . Eso es solo porque su modelo tiene solo una variable. Laanova.glm()
función realizará pruebas secuenciales, que son análogas a 'SS tipo I' en un entorno lineal, mientras que las pruebas de Waldsummary()
son análogas a 'SS tipo III' en un entorno lineal (vea mi respuesta aquí: Cómo interpretar el tipo I, tipo II y tipo III ANOVA y MANOVA? ). Considerar:Puede calzar la
anova.glm()
función para darle pruebas de puntaje y razón de probabilidad de variables individuales en un modelo de regresión logística múltiple que es análogo al 'SS tipo III', pero es tedioso. Debería seguir reajustando su modelo para que cada variable a su vez aparezca en último lugar en la fórmula proporcionada a laglm()
llamada. El último valor p listado en laanova.glm()
salida es uno que será análogo al 'tipo III SS'.Para obtener la puntuación o las pruebas de razón de verosimilitud de variables individuales más convenientemente, use
drop1()
en su lugar Considerar:fuente
En
R
, lasummary
función paraglm
calcula el valor p usando una estadística de Wald simple, es decirdonde es el parámetro de regresión de interés, es el error estándar de este parámetro de regresión estimado y es el CDF de una distribución normal estándar.β^ SE(β^) Φ
Para recrear esto desde su salida, intente
fuente