Espero que esta seja uma pergunta que alguém aqui possa responder sobre a natureza da decomposição de somas de quadrados de um modelo de efeitos mistos adequado lmer
(do pacote lme4 R).
Primeiramente, devo dizer que estou ciente da controvérsia ao usar essa abordagem e, na prática, seria mais provável que eu usasse um LRT com inicialização para comparar modelos (como sugerido por Faraway, 2006). No entanto, estou intrigado com a forma de replicar os resultados e, por minha própria sanidade, pensei em perguntar aqui.
Basicamente, estou começando a entender o uso de modelos de efeitos mistos adequados ao lme4
pacote. Eu sei que você pode usar o anova()
comando para fornecer um resumo do teste seqüencial dos efeitos fixos no modelo. Até onde eu sei, isso é o que Faraway (2006) chama de abordagem dos quadrados médios esperados. O que eu quero saber é como são calculadas as somas dos quadrados?
Eu sei que eu poderia pegar os valores estimados de um modelo específico (usando coef()
), supor que eles são fixos e, em seguida, fazer testes usando a soma dos quadrados dos resíduos do modelo com e sem os fatores de interesse. Isso é bom para um modelo que contém um único fator dentro do assunto. No entanto, ao implementar um design de plotagem dividida, o valor da soma dos quadrados que recebo é equivalente ao valor produzido por R usando aov()
uma Error()
designação apropriada . No entanto, isso não é o mesmo que a soma dos quadrados produzidos pelo anova()
comando no objeto de modelo, apesar do fato de que as relações F são as mesmas.
É claro que isso faz todo sentido, pois não há necessidade de Error()
estratos em um modelo misto. No entanto, isso deve significar que as somas de quadrados são penalizadas de alguma forma em um modelo misto, a fim de fornecer índices F apropriados. Como isso é alcançado? E como o modelo de alguma forma corrige a soma dos quadrados entre as parcelas, mas não corrige a soma dos quadrados entre as parcelas. Evidentemente, isso é algo que é necessário para uma ANOVA de parcelas subdivididas clássica que foi alcançada designando diferentes valores de erro para os diferentes efeitos, então como um modelo de efeito misto permite isso?
Basicamente, eu quero poder replicar os resultados do anova()
comando aplicado a um objeto de modelo mais antigo para verificar os resultados e meu entendimento; no entanto, no momento, posso conseguir isso para um design normal dentro do assunto, mas não para a divisão de divisão. desenho de enredo e não consigo descobrir por que esse é o caso.
Como um exemplo:
library(faraway)
library(lme4)
data(irrigation)
anova(lmer(yield ~ irrigation + variety + (1|field), data = irrigation))
Analysis of Variance Table
Df Sum Sq Mean Sq F value
irrigation 3 1.6605 0.5535 0.3882
variety 1 2.2500 2.2500 1.5782
summary(aov(yield ~ irrigation + variety + Error(field/irrigation), data = irrigation))
Error: field
Df Sum Sq Mean Sq F value Pr(>F)
irrigation 3 40.19 13.40 0.388 0.769
Residuals 4 138.03 34.51
Error: Within
Df Sum Sq Mean Sq F value Pr(>F)
variety 1 2.25 2.250 1.578 0.249
Residuals 7 9.98 1.426
Como pode ser visto acima, todos os índices F concordam. As somas de quadrados por variedade também concordam. No entanto, as somas de quadrados para irrigação não concordam, no entanto, parece que a produção mais recente é escalada. Então, o que o comando anova () realmente faz?
mixed()
partir daafex
qual oferece o que você deseja (viamethod = "PB"
). E como você obviamente fez alguns testes com dados de brinquedos, seria definitivamente útil se você pudesse mostrar essas equivalências com os dados e o código (portanto, sem +1).