En R, el drop1
comando genera algo ordenado.
Estos dos comandos deberían obtener algún resultado:
example(step)#-> swiss
drop1(lm1, test="F")
El mío se ve así:
> drop1(lm1, test="F")
Single term deletions
Model:
Fertility ~ Agriculture + Examination + Education + Catholic +
Infant.Mortality
Df Sum of Sq RSS AIC F value Pr(F)
<none> 2105.0 190.69
Agriculture 1 307.72 2412.8 195.10 5.9934 0.018727 *
Examination 1 53.03 2158.1 189.86 1.0328 0.315462
Education 1 1162.56 3267.6 209.36 22.6432 2.431e-05 ***
Catholic 1 447.71 2552.8 197.75 8.7200 0.005190 **
Infant.Mortality 1 408.75 2513.8 197.03 7.9612 0.007336 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
¿Qúe significa todo esto? Supongo que las "estrellas" ayudan a decidir qué variables de entrada se deben mantener. Mirando el resultado anterior, quiero descartar la variable "Examen" y centrarme en la variable "Educación", ¿es correcta esta interpretación?
Además, el valor AIC, menor es mejor, ¿sí?
Ed. Tenga en cuenta la respuesta Wiki de la comunidad a continuación y agréguela si lo considera conveniente para aclarar este resultado.
step()
ha sido calificada con +2 al momento de escribir este artículo (¿por qué ?!), (3) el OP reconoció la utilidad de la respuesta de @ Joris.Respuestas:
drop1
le ofrece una comparación de modelos basada en el criterio AIC, y cuando usa la opción,test="F"
le agrega un "ANOVA tipo II", como se explica en los archivos de ayuda . Siempre que solo tenga variables continuas, esta tabla es exactamente equivalente asummary(lm1)
, ya que los valores F son solo esos valores T al cuadrado. Los valores P son exactamente iguales.Entonces, ¿qué hacer con él? Interpretarlo exactamente de esa manera: se expresa de una manera si el modelo sin ese término es "significativamente" diferente del modelo con ese término. Tenga en cuenta el "" alrededor significativamente, ya que el significado aquí no puede interpretarse como la mayoría de la gente piensa. (problema de prueba múltiple y todo ...)
Y con respecto al AIC: cuanto más bajo, mejor parece más. AIC es un valor que va para el modelo , no para la variable. Por lo tanto, el mejor modelo de esa salida sería el que no tenga el examen variable.
Eso sí, el cálculo de la estadística AIC y F es diferente de las funciones R
AIC(lm1)
resp.anova(lm1)
. ParaAIC()
, esa información se proporciona en las páginas de ayuda deextractAIC()
. Para laanova()
función, es bastante obvio que el tipo I y el tipo II SS no son lo mismo.Estoy tratando de no ser grosero, pero si no entiendes lo que se explica en los archivos de ayuda allí, no deberías usar la función en primer lugar. La regresión paso a paso es increíblemente complicada, poniendo en peligro sus valores p de la manera más profunda. Así que de nuevo, no te bases en los valores p. Su modelo debe reflejar su hipótesis y no al revés.
fuente
Como referencia, estos son los valores que se incluyen en la tabla: se
Df
refiere a Grados de libertad , "el número de grados de libertad es el número de valores en el cálculo final de una estadística que pueden variar libremente".La
Sum of Sq
columna se refiere a la suma de cuadrados (o más precisamente la suma de desviaciones al cuadrado ). En resumen, esta es una medida de la cantidad que cada valor individual se desvía de la media general de esos valores.RSS
es la suma residual de cuadrados . Estas son una medida de cuánto varía el valor predicho de la variable dependiente (o de salida) del valor verdadero para cada punto de datos en el conjunto (o más coloquialmente: cada "línea" en la tabla de datos).AIC
es el criterio de información de Akaike que generalmente se considera "demasiado complejo de explicar", pero es, en resumen, una medida de la bondad de ajuste de un modelo estadístico estimado. Si necesita más detalles, tendrá que recurrir a árboles muertos con palabras (es decir, libros). O Wikipedia y los recursos allí.Se
F value
utiliza para realizar lo que se llama una prueba F y de ella se deriva elPr(F)
valor, que describe qué tan probable (o Probable = Pr) es ese valor F. Un valor Pr (F) cercano a cero (indicado por***
) es indicativo de una variable de entrada que de alguna manera es importante incluir en un buen modelo, es decir, un modelo que no lo incluye es "significativamente" diferente al que Eso hace.Todos estos valores, en el contexto del
drop1
comando, se calculan para comparar el modelo general (incluidas todas las variables de entrada) con el modelo resultante de eliminar esa variable específica por cada línea en la tabla de salida.Ahora, si esto se puede mejorar, siéntase libre de agregarlo o aclarar cualquier problema. Mi objetivo es solo aclarar y proporcionar una mejor referencia de "búsqueda inversa" desde el resultado de un comando R al significado real del mismo.
fuente