1: The genres are not mutually exclusive. Thus the sum of the genre columns is not a column of all 1s, unliked the case of dummies generated from categorical variables. 2: library(lme4) print(length(levels(VerbAgg$item))) 3: library(rectools) getInstEval() ivl1 <- ivl[,c(3,4,6)] ivl1$prod <- ivl1$studage * ivl$service print(lm(ivl$y ~ .,data=ivl1)) # y ~ . is OK too 4: library(rectools) getInstEval() ivl1 <- ivl[,c(3,4,6)] ivl1$prod <- ivl1$studage * ivl$service ivl1$sage2 <- ivl1$studage^2 print(lm(ivl$y ~ .,data=ivl1))