Estoy ejecutando glms en R (modelos lineales generalizados). Pensé que conocía los valores, hasta que vi que llamar a un resumen para un glm no le da un valor de referencia superior del modelo en su conjunto, al menos no en el lugar donde lo hacen los modelos lineales.
Me pregunto si esto se da como el valor de la intersección, en la parte superior de la tabla de coeficientes. Entonces, en el siguiente ejemplo, si bien Wind.speed..knots y canopy_density pueden ser significativos para el modelo, ¿cómo sabemos si el modelo en sí es significativo? ¿Cómo sé si confiar en estos valores? ¿Tengo razón al preguntarme si Pr (> | z |) para (Intercepción) representa la importancia del modelo? ¿Es este modelo amigos importantes? ¡Gracias!
Debo tener en cuenta que ejecutar una prueba F no dará un valor, ya que recibo un mensaje de error que dice que ejecutar pruebas F en la familia binomial es inapropiado.
Call:
glm(formula = Empetrum_bin ~ Wind.speed..knots. + canopy_density,
family = binomial, data = CAIRNGORM)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.2327 -0.7167 -0.4302 -0.1855 2.3194
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.8226 1.2030 1.515 0.1298
Wind.speed..knots. -0.5791 0.2628 -2.203 0.0276 *
canopy_density -2.5733 1.1346 -2.268 0.0233 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 59.598 on 58 degrees of freedom
Residual deviance: 50.611 on 56 degrees of freedom
(1 observation deleted due to missingness)
AIC: 56.611
Respuestas:
Puede hacer una prueba de chi-cuadrado asintótica de (59.598-50.611) frente a una prueba de chi-cuadrado con (58-56) df, o usar
anova()
en su objeto glm (que no hace la prueba directamente, pero al menos calcula ( 59.598-50.611) y (58-56) para usted).Este es efectivamente el análisis de la desviación .
Este es el tipo de cálculos que podría hacer (en un conjunto de datos diferente, que viene con R):
Lo que da el valor p para una estática chi cuadrado asintótica basada en la desviación .
O puede usar las funciones
deviance
ydf.residual
para hacer esto:-
Muchas personas usarían la comparación entre AIC de modelo completo y nulo (o en algunos casos, tal vez una comparación entre un modelo de interés y el modelo saturado) para determinar si el modelo era mejor que el nulo en ese sentido.
-
No lo hace. De hecho, la intersección del valor p generalmente no es de interés directo.
Si está considerando un modelo con un parámetro de dispersión, he visto a algunas personas argumentar a favor de hacer una prueba F en lugar de un chi-cuadrado asintótico; corresponde a personas que usan una prueba t en lugar de az en los coeficientes individuales. No es probable que sea una aproximación razonable en muestras pequeñas. No he visto una derivación o simulación que sugiera que la F es necesariamente una aproximación adecuada (es decir, mejor que el resultado asintótico) en el caso de los GLM en general. Bien podría existir, pero no lo he visto.
fuente
Anova(fit, type = 2)
desde lacar
bibliotecaSuponiendo que su modelo está en el objeto 'ajuste', podría usar este código para realizar una prueba de probabilidad de registro en su modelo binomial Como ha notado, una prueba F no es apropiada, pero esta prueba probará si su modelo se predice mejor que al azar.
Esta es la fórmula para la prueba de relación de probabilidad logarítmica.
Y esto te dará el valor p. Aunque no estoy 100% seguro de que sea el df correcto. Estoy bastante seguro de que es la diferencia en el número de parámetros, de los cuales tiene 2 en su modelo saturado y ninguno en el modelo nulo, ergo df = 3 - 1 = 2. Pero eso podría ser algo a lo que seguir.
fuente
Alternativamente, puede mirar AIC o medidas relacionadas como BIC.
fuente