3 votos

¿Cómo obtener un ANOVA equivalente en R para un modelo con y sin efecto aleatorio?

Mi pregunta es:

¿Hay alguna manera de forzar Anova() para analizar de alguna manera gls (que internamente son casi idénticos a los objetos lme objetos), o forzar Anova() para honrar a los test.statistics='F' o al menos hacer una suma de cuadrados de tipo II válida a mano en un lme y un gls ¿Objeto?

Por qué:

Estoy tratando de obtener la salida de Anova en el mismo formato para un lm o aov o gls y un objeto lme que utiliza la misma fórmula de efectos fijos pero además tiene efectos aleatorios. Si utilizo Anova() de la car obtengo los estadísticos F para aov y lm pero las estadísticas Chi-cuadrado para lme objetos, y no funciona en absoluto para gls objetos [1].

Si utilizo anova.gls() y anova.lme() entonces ambos devuelven los estadísticos F, pero utilizan la suma de cuadrados de tipo III o de tipo I y yo intento utilizar la de tipo II.

[1]: Da error Error in eval(expr, envir, enclos) : object 'y' not found donde y es la variable de respuesta... esto puede ser rastreado al atributo para model.matrix() para gls objetos que no tienen un assign atributo.

2voto

f1r3br4nd Puntos 762

Resulta que ni siquiera debería preocuparme por el tipo de suma de cuadrados si todo lo que intento hacer es comparar un modelo gls y uno de efectos mixtos con los mismos efectos fijos. El único contraste en esta comparación es entre esos dos modelos. Cuando se invoca en más de un objeto, la función de R anova() es sólo una prueba de razón de verosimilitud. Si incluyo más de dos objetos, el contraste siempre va a ser la codificación de la diferencia hacia atrás (es decir, cada modelo menos su predecesor).

Si fm2 es un ajuste de lme, lo siguiente sí funciona:

gfm2<-gls(model=eval(fm2$call$fixed),data=eval(fm2$call$data));
anova(gfm2,fm2);

El problema con Anova() El hecho de que no funcione con gls fits creo que es un error, y a partir de la versión 2.0.15 todavía no se ha solucionado.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X