Uma outra possível e elegante solução no R para este problema é utilizar a função lme do pacote nlme.
Note que a abordagem do problema por este pacote é um pouco diferente da forma apresentada no curso por se tratar de uma ferramente geral para modelos com efeitos aleatórios. Entretanto todos os elementos relevantes da análise estão incluídos nos resultados.
Vamos a seguir ver os comandos necessários e comentar os resultados.
Inicialmente temos que carregar o pacote nlme com o comando require.
A seguir criamos uma variável para indicar o efeito aleatório que neste exemplo chamamos de ex06$fa utilizando a função getGroups.
Feito isto podemos rodar a função lme que faz o ajuste do modelo.
> require(nlme)
[1] TRUE
> ex06$fa <- getGroups(ex06, ~ 1|forn/lot, level=2)
> ex06.av <- lme(resp ~ forn, random=~1|fa, data=ex06)
> ex06.av
Linear mixed-effects model fit by REML
Data: ex06
Log-restricted-likelihood: -71.42198
Fixed: resp ~ forn
(Intercept) forn2 forn3
-0.4166667 0.7500000 1.5833333
Random effects:
Formula: ~1 | fa
(Intercept) Residual
StdDev: 1.307561 1.624483
Number of Observations: 36
Number of Groups: 12
Este modelo tem a variável forn como efeito fixo e a variável
lot como efeito aleatório com o componente de
variância
.
Além disto temos a variância residual
.
A saída acima mostra as estimativas destes componentes da variância
como sendo
e
.
O comando anova vai mostrar a análise de variância com apenas
os efeitos principais. O fato do programa não incluir o efeito
aleatório de lotes na saída não causa problema algum.
O comando intervals mostra os intervalos de confiança para os
componentes de variância. Portanto para verificar a significância do
efeito de lotes basta ver se o intervalo para este componente de
variância exclui o valor
, o que é o caso neste exemplo conforme
vamos abaixo.
> anova(ex06.av)
numDF denDF F-value p-value
(Intercept) 1 24 0.6043242 0.4445
forn 2 9 0.9690643 0.4158
> intervals(ex06.av)
Approximate 95% confidence intervals
Fixed effects:
lower est. upper
(Intercept) -2.0772277 -0.4166667 1.243894
forn2 -1.8239746 0.7500000 3.323975
forn3 -0.9906412 1.5833333 4.157308
Random Effects:
Level: fa
lower est. upper
sd((Intercept)) 0.6397003 1.307561 2.672682
Within-group standard error:
lower est. upper
1.224202 1.624483 2.155644
Finalmente uma versão mais detalhada dos resultados pode ser obtida com o comando summary.
> summary(ex06.av)
Linear mixed-effects model fit by REML
Data: ex06
AIC BIC logLik
152.8440 160.3265 -71.42198
Random effects:
Formula: ~1 | fa
(Intercept) Residual
StdDev: 1.307561 1.624483
Fixed effects: resp ~ forn
Value Std.Error DF t-value p-value
(Intercept) -0.4166667 0.8045749 24 -0.5178718 0.6093
forn2 0.7500000 1.1378407 9 0.6591432 0.5263
forn3 1.5833333 1.1378407 9 1.3915246 0.1975
Correlation:
(Intr) forn2
forn2 -0.707
forn3 -0.707 0.500
Standardized Within-Group Residuals:
Min Q1 Med Q3 Max
-1.4751376 -0.7500844 0.0812409 0.7060895 1.8720268
Number of Observations: 36
Number of Groups: 12
O próximo passo da seria fazer uma análise dos resíduos para verificar os pressupostos, semalhante ao que foi feito no experimento fatorial da aula anterior. Vamos deixar isto por conta do leitor.
ADILSON DOS ANJOS 2005-11-07