Obtención de medios de mínimos cuadrados generalizados para efectos fijos en nlme o lme4
-
27-10-2019 - |
Pregunta
Medias de mínimos cuadrados con sus errores estándar para aov
El objeto se puede obtener con model.tables
función:
npk.aov <- aov(yield ~ block + N*P*K, npk)
model.tables(npk.aov, "means", se = TRUE)
Me pregunto cómo obtener las medias de mínimos cuadrados generalizados con sus errores estándar de nlme
o lme4
objetos:
library(nlme)
data(Machines)
fm1Machine <- lme(score ~ Machine, data = Machines, random = ~ 1 | Worker )
Cualquier comentario y sugerencia será muy apreciado.Gracias
Solución
lme y nlme se ajustan a la máxima verosimilitud o a la máxima verosimilitud restringida (este último es el valor predeterminado), por lo que sus resultados se basarán en cualquiera de esos métodos.
summary(fm1Machine)
le proporcionará el resultado que incluye las medias y los errores estándar:
....irrelevant output deleted
Fixed effects: score ~ Machine
Value Std.Error DF t-value p-value
(Intercept) 52.35556 2.229312 46 23.48507 0
MachineB 7.96667 1.053883 46 7.55935 0
MachineC 13.91667 1.053883 46 13.20514 0
Correlation:
....irrelevant output deleted
Debido a que ha ajustado los efectos fijos con una intersección, obtiene un término de intersección en el resultado de los efectos fijos en lugar de un resultado para la MáquinaA.Los resultados de MachineB y MachineC contrastan con la intersección, por lo que para obtener las medias de MachineB y MachineC, sume el valor de cada uno a la media de la intersección.Pero los errores estándar no son los que le gustaría.
Para obtener la información que busca, ajuste el modelo de modo que no tenga un término de intersección en los efectos fijos (consulte la -1
al final de los efectos fijos:
fm1Machine <- lme(score ~ Machine-1, data = Machines, random = ~ 1 | Worker )
Esto le dará los medios y el resultado de error estándar que desea:
....irrelevant output deleted
Fixed effects: score ~ Machine - 1
Value Std.Error DF t-value p-value
MachineA 52.35556 2.229312 46 23.48507 0
MachineB 60.32222 2.229312 46 27.05867 0
MachineC 66.27222 2.229312 46 29.72765 0
....irrelevant output deleted
Otros consejos
Para citar a Douglas Bates de
http://markmail.org/message/dqpk6ftztpbzgekm
"Tengo la fuerte sospecha de que, para la mayoría de los usuarios, la definición de lsmeans es" los números que obtengo de SAS cuando utilizo una declaración de lsmeans ". Mi sugerencia para obtener dichos números es comprar una licencia de SAS y usarSAS para adaptarse a sus modelos ".