<div dir="ltr"><div class="gmail_default" style="font-family:trebuchet ms,sans-serif">Maurício,<br><br></div><div class="gmail_default" style="font-family:trebuchet ms,sans-serif">O primeiro gráfico até pode mostrar não independência quando ela é induzida por falta de ajuste. O código abaixo ilustra minha afirmação.<br><br><span style="font-family:monospace,monospace">library(lattice)<br>library(latticeExtra)<br><br>data(wtloss, package = "MASS")<br>str(wtloss)<br><br>xyplot(Weight ~ Days, data = wtloss)<br><br># Ajuste de um modelo linear.<br>m0 <- lm(Weight ~ Days, data = wtloss)<br><br># Indica falta de ajuste e não independência.<br>plot(m0, which = 1)<br><br># Mas eles exibem uma não independência devido à falta de ajuste.<br>plot(acf(residuals(m0)))<br><br># Ajuste do modelo quadrático.<br>m1 <- lm(Weight ~ poly(Days, degree = 2), data = wtloss)<br><br># Ausência de falta de ajuste.<br>plot(m1, which = 1)<br><br># E sem correlação seria.<br>plot(acf(residuals(m1)))<br><br>start <- list(th0 = 185, th1 = -100, th2 = 140)<br>with(start, {<br>    plot(Weight ~ Days, data = wtloss)<br>    curve(th0 + th1 * (1 - 2^(-Days/th2)),<br>          xname = "Days",<br>          add = TRUE,<br>          col = 2)<br>})<br><br># Ajuste do modelo não linear.<br>m2 <- nls(Weight ~ th0 + th1 * (1 - 2^(-Days/th2)),<br>          data = wtloss,<br>          start = start)<br><br>with(as.list(coef(m2)), {<br>    plot(Weight ~ Days, data = wtloss)<br>    curve(th0 + th1 * (1 - 2^(-Days/th2)),<br>          xname = "Days",<br>          add = TRUE,<br>          col = 2)<br>})<br><br># Valores preditos de cada modelo.<br>pred <- with(wtloss, data.frame(Days = seq(min(Days),<br>                                           max(Days),<br>                                           length.out = 30)))<br>pred$y0 <- predict(m0, newdata = pred)<br>pred$y1 <- predict(m1, newdata = pred)<br>pred$y2 <- predict(m2, newdata = pred)<br><br># Resíduos e valores ajustados de cada modelo.<br>L <- lapply(list(m0, m1, m2),<br>            function(m) {<br>                data.frame(r = residuals(m), f = fitted(m))<br>            })<br>names(L) <- 0:2<br>rf <- plyr::ldply(L, .id = "model")<br><br># Gráfico da curva predita com os valores observados.<br>p1 <- xyplot(y0 + y1 + y2 ~ Days,<br>             outer = TRUE,<br>             type = "l",<br>             layout = c(NA, 1),<br>             data = pred) +<br>    layer(panel.points(x = wtloss$Days, y = wtloss$Weight))<br><br># Gráfico dos resíduos vs valores ajustados.<br>p2 <- xyplot(r ~ f | model,<br>             data = rf,<br>             layout = c(NA, 1),<br>             type = c("p", "smooth"))<br><br># Todos numa mesma "página".<br>c(p1, p2, layout = c(NA, 2))<br></span><br><br>À disposição.<br></div><div class="gmail_default" style="font-family:trebuchet ms,sans-serif">Walmes.<br></div>​</div>