Após ajustar o modelo devemos proceder a análise dos resíduos para verificar os pressupostos. O R produz automaticamente 4 gráficos básicos de resíduos conforme a Figura 2 com o comando plot.
> par(mfrow=c(2,2)) > plot(ex04.av)
Os gráficos permitem uma análise dos resíduos que auxiliam no julgamento da adequacidade do modelo. Evidentemente você não precisa se limitar aos gráficos produzidos automaticamente pelo R - você pode criar os seus próprios gráficos muito facilmente. Neste gráficos você pode usar outras variáveis, mudar texto de eixos e títulos, etc, etc, etc. Examine os comandos abaixo e os gráficos por eles produzidos.
> par(mfrow=c(2,1))
> residuos <- resid(ex04.av)
> plot(ex04$rec, residuos)
> title("Resíduos vs Recipientes")
> plot(ex04$esp, residuos)
> title("Resíduos vs Espécies")
> par(mfrow=c(2,2))
> preditos <- (ex04.av$fitted.values)
> plot(residuos, preditos)
> title("Resíduos vs Preditos")
> s2 <- sum(resid(ex04.av)^2)/ex04.av$df.res
> respad <- residuos/sqrt(s2)
> boxplot(respad)
> title("Resíduos Padronizados")
> qqnorm(residuos,ylab="Residuos", main=NULL)
> qqline(residuos)
> title("Grafico Normal de \n Probabilidade dos Resíduos")
Além disto há alguns testes já programados. Como exemplo vejamos e teste de Shapiro-Wilk para testar a normalidade dos resíduos.
> shapiro.test(residuos)
Shapiro-Wilk normality test
data: residuos
W = 0.9293, p-value = 0.09402
Desdobrando interações
Conforme visto na apostila do curso, quando a interação entre os
fatores é significativa podemos desdobrar os graus de liberdade de um
fator dentro de cada nível do outro.
A forma de fazer isto no R é reajustar o modelo utilizando
a notação / que indica efeitos aninhados.
Desta forma podemos desdobrar os efeitos de espécie dentro de cada
recipiente e vice-versa conforme mostrado a seguir.
> ex04.avr <- aov(resp ~ rec/esp)
> summary(ex04.avr, split=list("rec:esp"=list(r1=1, r2=2, r3=3)))
Df Sum Sq Mean Sq F value Pr(>F)
rec 2 92.861 46.430 36.1952 4.924e-07 ***
rec:esp 3 82.842 27.614 21.5269 3.509e-06 ***
rec:esp: r1 1 0.211 0.211 0.1647 0.6897
rec:esp: r2 1 79.380 79.380 61.8813 3.112e-07 ***
rec:esp: r3 1 3.251 3.251 2.5345 0.1288
Residuals 18 23.090 1.283
---
Signif. codes: 0 `***' 0.001 `**' 0.01 `*' 0.05 `.' 0.1 ` ' 1
> ex04.ave <- aov(resp ~ esp/rec)
> summary(ex04.ave, split=list("esp:rec"=list(e1=c(1,3), e2=c(2,4))))
Df Sum Sq Mean Sq F value Pr(>F)
esp 1 19.082 19.082 14.875 0.001155 **
esp:rec 4 156.622 39.155 30.524 8.438e-08 ***
esp:rec: e1 2 87.122 43.561 33.958 7.776e-07 ***
esp:rec: e2 2 69.500 34.750 27.090 3.730e-06 ***
Residuals 18 23.090 1.283
---
Signif. codes: 0 `***' 0.001 `**' 0.01 `*' 0.05 `.' 0.1 ` ' 1
ADILSON DOS ANJOS 2005-11-07