[R] Reproducing lm outcomes with mixed effect model on augmented dataset

CAMARDA Carlo Giovanni carlo-giovanni.camarda at ined.fr
Fri May 1 16:16:21 CEST 2015


Dear R-users, 


let's assume a simple linear model in which to each original observation one attaches random response and covariate, but with weights that are practically zero. If one runs a linear model to both original and augmented data, one obtains the same estimates, but obviously different standard errors. 
Could we reproduce the lm() outcomes in a mixed effect model setting using, for instance, lme(nlme)? Is there any way to get the lm() estimates and standard deviations by accounting for correlation within each new pseudo-observation? 
Below a reproducible and commented instance of the problem . 
Thanks in advance for your help, 
GC 






library(nlme) 
## simulating data 
m <- 1000 
x <- runif(m) 
y <- 3 + 4*x + rnorm(m, sd=0.5) 
id <- 1:m 
dati <- cbind(id=id, x=x, y=y, w=1) 
## new data: repeat n times original data 
n <- 10 
datiA <- kronecker(dati, matrix(1,n,1)) 
## trasform in dataframes with suitable names 
dati <- as.data.frame(dati) 
datiA <- as.data.frame(datiA) 
names(datiA) <- names(dati) 
## assign ~0 weight to everyone, but the original observations 
fw <- 10^-30 
datiA$w <- fw 
datiA$w[seq(1,m*n,n)] <- 1 - n*fw 
## assign random numbers to all response/covariate, but for the original observations 
datiA$x[datiA$w==fw] <- runif(m*n-m) 
datiA$y[datiA$w==fw] <- runif(m*n-m) 
## fits with lm() 
fit <- lm(y~x, weights=w, data=dati) 
summary(fit)$coef[,1:2] 
fitA <- lm(y~x, weights=w, data=datiA) 
summary(fitA)$coef[,1:2] 
## mixed model approach, lme() 
## attempting to reproduce results from "fit" 
fitMM <- lme(y ~ x, weights=varFixed(~1/w), 
random=~1|id, 
data=datiA) 

summary(fitMM)$tTable[,1:2] 




	[[alternative HTML version deleted]]



More information about the R-help mailing list