Prezado Walmes, muito obrigado.


Pelo que entendi não é possível "sigma^2_b""sigma^2_e" utilizando a função gls().

A função VarCorr(modelo2) fornece "sigma^2_b""sigma^2_e", correto?

                        Variance          StdDev  
(Intercept)   667641.149     817.09311
Residual        6041.696       77.72834

Tenho uma dúvida: a variância do intercepto é "sigma^2_b"?


Muito obrigado. Sua contribuição está sendo muito válida no meu trabalho.
Luiz

On Wednesday, November 27, 2019, 07:13:37 PM GMT-2, Walmes Zeviani <walmeszeviani@gmail.com> wrote:


Luiz,

Você terá que mudar a função que está usando.

library(nlme)

table(x)

lattice::xyplot(y ~ x)

modelo0 <- aov(y ~ x)
a <- anova(modelo0)
a

# Componentes de variância pelo método ANOVA.
c("sigma^2_b" = (a["x", "Mean Sq"] - a["Residuals", "Mean Sq"])/6,
  "sigma^2_e" = a["Residuals", "Mean Sq"])

modelo1 <- lme(y ~ 1,
               random = ~1 | x,
               method = "REML")
modelo1

# Componentes de variância pelo método REML.
VarCorr(modelo1)

modelo2 <- lme(y ~ 1,
               random = ~1 | x,

               weights = varExp(),
               method = "ML")

modelo2

# Componentes de variância pelo método REML.
# ATTENTION: não são imediatamente comparáveis com os anteriores.
VarCorr(modelo2)

À disposição.
Walmes.