<html><head></head><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div id="yiv0758909211"><div id="yui_3_16_0_1_1480072599226_2777"><div style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;" id="yui_3_16_0_1_1480072599226_2776"><div id="yiv0758909211yui_3_16_0_1_1480013487931_2397" dir="ltr">Boa dia a todos, tenho algumas dúvidas sobre os mínimos quadrados generalizados (gls) no que se refere aos pressupostos de normalidade. Quando utilizo gls(y ~ x, ...) pressupõe-se que y tem distribuição normal? E os resíduos também? Ou deve me preocupar apenas em analisar o gráficos dos resíduos (bem distribuídos em torno de zero e sem padrão)?. A grande totalidade dos dados que trabalho quase nunca y segue uma distribuição normal.</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2732"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2733"></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2732" dir="ltr">A outra dúvida se refere ao cálculo no R. Conforme script abaixo consegui reproduzir a fórmula de calculo da função gls() nos casos em que weights = varFixed() e weights = varFunc(), mas não entendi a fórmula de cálculo nos casos em que weights = varExp() e weights = varPower(). Li a documentação do R, mas não consegui reproduzir. Alguém sabe?</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2732" dir="ltr">Desde já agradeço.</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2732" dir="ltr">Luiz</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2732" dir="ltr"><br></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2734"># Dados</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2735"> x=c(1,2,3,3,4,5,6,7,8,9)</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2736"> y=c(7,5,7,8,8,5,7,9,9,9)</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2737"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2738"></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2739"># Carregar pacote</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2740"> library(nlme)</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2741"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2742"></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2743"># Matrix X</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2744"> X=model.matrix(~x)</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2745"><br></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2749"># varFixed / varFunc</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2750"> r=fitted(lm(y~x))</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2751"> omegafit=matrix(0,length(r),length(r)) ; diag(omegafit)=r</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2752"> solve( t(X) %*% solve(omegafit) %*% X ) %*% t(X) %*% solve(omegafit) %*% y</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2753"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2754"></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2755"> gls(y ~ x, weights = varFixed(~r), method = "ML")$coefficients</div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2756"> gls(y ~ x, weights = varFunc(~r) , method = "ML")$coefficients</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2757"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2758"></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2757"><br></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2757"><br></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2757"><br></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2757"><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2823"> # Dúvida</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2824"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2825"></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2826"># varExp()</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2827"> r=exp( 2*fitted(lm(y~x)) )</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2828"> omegafit=matrix(0,length(r),length(r)) ; diag(omegafit)=r</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2829"> solve( t(X) %*% solve(omegafit) %*% X ) %*% t(X) %*% solve(omegafit) %*% y</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2830"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2831"></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2832"> gls(y ~ x, weights = varExp(), method = "ML")$coefficients</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2833"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2834"></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2835"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2836"></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2837"># varPower</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2838"> r=abs(fitted(lm(y~x)))^2</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2839"> omegafit=matrix(0,length(r),length(r)) ; diag(omegafit)=r</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2840"> solve( t(X) %*% solve(omegafit) %*% X ) %*% t(X) %*% solve(omegafit) %*% y</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2841"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2842"></div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2843"> gls(y ~ x, weights = varPower(), method = "ML")$coefficients</div><div dir="ltr" id="yiv0758909211yui_3_16_0_1_1480013487931_2844"><br id="yiv0758909211yui_3_16_0_1_1480013487931_2845"></div></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2397"><br></div><div id="yiv0758909211yui_3_16_0_1_1480013487931_2397"><br></div></div></div></div></div></body></html>