huang min <minhuangr <at> gmail.com> writes: > > HI, > > I would like to extract the variance components estimation in lme function > like > > a.fit<-lme(distance~age, data=aaa, random=~day/subject) > > There should be three variances \sigma_day, \sigma_{day %in% subject } and > \sigma_e. > > I can extract the \sigma_e using something like a.fit$var. However, I cannot > manage to extract the first two variance components. I can only see the > results in summary(a.fit). > > I have some problem in the lme4 package and hence use the nlme package. The > example data also has some problem so I just list the function here using > some imaginary data set. Thank you. >
You probably want to try one of these > fm1 <- lme(distance ~ age, data = Orthodont, subset = Sex == "Female") > getVarCov(fm1) Random effects variance covariance matrix (Intercept) age (Intercept) 3.55020 -0.107490 age -0.10749 0.025898 Standard Deviations: 1.8842 0.16093 > diag(getVarCov(fm1)) (Intercept) age 3.55015248 0.02589773 > VarCorr(fm1) Subject = pdSymm(age) Variance StdDev Corr (Intercept) 3.55015248 1.8841848 (Intr) age 0.02589773 0.1609277 -0.354 Residual 0.44659098 0.6682746 > VarCorr(fm1)[,1] (Intercept) age Residual "3.55015248" "0.02589773" "0.44659098" > as.numeric(VarCorr(fm1)[,1]) [1] 3.55015248 0.02589773 0.44659098 Mark ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.