nested_lmer.2 <- function(x, remove=0) { x <- d1234 # Design specification: mtc nested within levels of cv x$design <- factor(paste(x$EXP, x$cv, x$mtc, sep="")) x$design <- C(x$design, matrix(c(-.5, +.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # (1) mtc | cv=1 - invalid | VV 0, 0, -.5, +.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # (2) mtc | cv=2 - valid | VV -.5, -.5, +.5, +.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # (3) cv | VV 0, 0, 0, 0, -.5, +.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # (4) mtc | cv=1 - invalid | VA 0, 0, 0, 0, 0, 0, -.5, +.5, 0, 0, 0, 0, 0, 0, 0, 0, # (5) mtc | cv=2 - valid | VA 0, 0, 0, 0, -.5, -.5, +.5, +.5, 0, 0, 0, 0, 0, 0, 0, 0, # (6) cv | VA 0, 0, 0, 0, 0, 0, 0, 0, -.5, +.5, 0, 0, 0, 0, 0, 0, # (7) mtc | cv=1 - invalid | AV 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -.5, +.5, 0, 0, 0, 0, # (8) mtc | cv=2 - valid | AV 0, 0, 0, 0, 0, 0, 0, 0, -.5, -.5, +.5, +.5, 0, 0, 0, 0, # (9) cv | AV 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -.5, +.5, 0, 0, # (10) mtc | cv=1 - invalid | AA 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -.5, +.5, # (11) mtc | cv=2 - valid | AA 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -.5, -.5, +.5, +.5, # (12) cv | AA -.5, -.5, -.5, -.5, +.5, +.5, +.5, +.5, 0, 0, 0, 0, 0, 0, 0, 0, # (13) vv vs. va 0, 0, 0, 0, 0, 0, 0, 0, -.5, -.5, -.5, -.5, +.5, +.5, +.5, +.5, # (14) av vs. aa -.5, -.5, -.5, -.5, -.5, -.5, -.5, -.5, +.5, +.5, +.5, +.5, +.5, +.5, +.5, +.5 # (15) vv, va vs. av, aa ), 16, 15), 15) # Remove subjects with zero-entry design cells if requested if (remove) { x.n <- table(x$ID, x$design) temp <- vector() for (i in 1:dim(x.n)[1]) { temp[i] <- any(x.n[i,]==0) } vid <- attr(x.n, "dimnames")[[1]][temp] # vid contains ids with 0 v <- vector() for (i in length(vid) ) { temp <- which(x$ID == vid[i]) v <- c(v, temp) # v contains records of ids } if(length(v) > 0) {x <- x[-v, ]} } print(table(x$ID, x$design)) m <- (lmer(rt ~ design + (1|ID), x )) m }