Ah, that makes sense. So essentially I'm just looking at an intercept for each group.
One more follow up if you don't mind.
In order to capture the combined group contrasts (e.g., between g1 - (g2 + g3)) I've tried creating multiple additional factors which have the appropriate group memberships:
groups <- factor(c(1,1,1,2,2,2,3,3,3))
g1 <- factor(c(1,1,1,2,2,2,2,2,2))
g23 <- factor(c(2,2,2,1,1,1,1,1,1))
g2 <- factor(c(2,2,2,1,1,1,2,2,2))
g13 <- factor(c(1,1,1,2,2,2,1,1,1))
g3 <- factor(c(2,2,2,2,2,2,1,1,1))
g12 <- factor(c(1,1,1,1,1,1,2,2,2))
design <- model.matrix(~ 0 + groups + g1 + g23 + g2 + g13 + g3 + g12)
contrasts <- makeContrasts(group1 - group2, g1 - g23, levels=design)
fit <- lmFit(data, design)
However, I get an error from lmFit saying the coefficients for the new factors are not calculable. I assume this is because they are dependent. I'm not sure how to set up the contrasts without them though. The only time I got reasonable results was when I used one binary factor for a single comparison that included an intercept:
g1 <- factor(c(1,1,1,2,2,2,2,2,2))
design <- model.matrix(~ 1 + g1)
I'm not sure his is a correct design either. What am I overlooking with respect to model.matrix and makeContrasts?
Thanks for your help, BTW.