Cuando se realiza un GLM y se obtiene el error "no definido debido a singularidades" en la salida de anova, ¿cómo se contrarresta este error?
Algunos han sugerido que se debe a la colinealidad entre covariables o que uno de los niveles no está presente en el conjunto de datos (ver: interpretación "no definido por singularidades" en lm )
Si quería ver lo que el "tratamiento especial" está impulsando el modelo y tengo 4 niveles de tratamiento: Treat 1
, Treat 2
, Treat 3
y Treat 4
, que se registran en la hoja de cálculo como: cuando Treat 1
es 1 el resto son cero, cuando Treat 2
es 1 el resto son cero, etc., ¿qué tendría que hacer?
r
generalized-linear-model
regression-coefficients
Platypezid
fuente
fuente
Respuestas:
Probablemente esté obteniendo ese error porque dos o más de sus variables independientes son perfectamente colineales (por ejemplo, codificación incorrecta de variables ficticias para hacer copias idénticas).
Use cor () en sus datos o alias () en su modelo para una inspección más cercana.
fuente
Se producirá el error "no definido debido a singularidades" debido a una fuerte correlación entre sus variables independientes. Esto se puede evitar teniendo variables ficticias n-1. En su caso, para la variable Tratamiento, debe usar 3 variables ficticias binarias (Treat1, Treat2, Treat3).
En la programación R, la función de regresión lineal lm () dará como resultado "NA" como coeficiente para variables altamente correlacionadas.
fuente