
Respostas dentro da mensagem. À disposição. Walmes. On Thu, Nov 28, 2019 at 2:49 PM Luiz Leal <richfield1974@yahoo.com> wrote:
Prezado Walmes, muito obrigado.
Pelo que entendi não é possível "sigma^2_b" e "sigma^2_e" utilizando a função gls().
Não. Tem-se que usar um modelo de efeitos aleatórios.
A função VarCorr(modelo2) fornece "sigma^2_b" e "sigma^2_e", correto?
Sim. Mas a interpretação é mais específica. "sigma^2_e" é a variância do erro ao redor do ponto médio da curva em um ponto específico do suporte da covariável que eu imagino ser o 0. A variância em outros pontos da curva será outra, obviamente, porque você declarou um modelo heterocedástico. # Média ajustada. m <- unique(fitted(modelo2)) # Modelo ajustado. plot(y ~ as.integer(x)) lines(m ~ seq_along(m)) # Variância estimada é função da média. # s2(v) = exp(2* t * v) var_estim <- 6041.676 * exp(2 * 0.0009743905 * m) var_amost <- tapply(y, x, var) cbind(var_amost, var_estim) # Resíduos crus e padronizados. plot(residuals(modelo2) ~ fitted(modelo2)) plot(residuals(modelo2, type = "pearson") ~ fitted(modelo2)) # Calculando o resíduo padronizado. r_my <- residuals(modelo2)/ sqrt(6041.676 * exp(2 * 0.0009743905 * fitted(modelo2))) # Comparação. cbind(r_my, residuals(modelo2, type = "pearson"))
Variance StdDev (Intercept) 667641.149 817.09311 Residual 6041.696 77.72834
Tenho uma dúvida: a variância do intercepto é "sigma^2_b"?
Sim.
Muito obrigado. Sua contribuição está sendo muito válida no meu trabalho. Luiz