Compare linear models with and without an interaction effect I want to compare the following two linear models:
model 1: y = mean + A + B  
model 2: y = mean + A + A*B

Is model 2 equivalent to y = mean + A + B + A*B? Can I use anova(model1, model2) in R to compare the two nested models? 
If not, how can I compare them in R?
 A: In R, if you want to test the interaction then you want
m1 <- lm(y ~ A + B, data = foo)
m2 <- lm(y ~ A * B, data = foo)

then
anova(m1, m2)

will give an F test for the interaction.
Note that m2 could be written longhand as
m2 <- lm(y ~ A + B + A:B, data = foo)

wherein the nesting become clear as A:B is the interaction term and its coefficient would be = 0 in m1. Note the intercept/constant term is implied in these model formulae.
Note that in
m2 <- lm(y ~ A + A*B)

the first A is redundant as A*B expands to A + B + A:B. R is clever enough to work out you don't want the following model A + A + B + A:B and only includes A once.
In R, A and B would be factors containing a recording of the label or type of each observation. If by your notation you have 3 levels/types in A and 4 in B, then A and B would be factor vectors with length(levels(A)) and length(levels(B)) equal to 3 and 4 respectively. R will create the design matrix for the model from the symbolic representation you provided via the formula. To see what R is doing, you can do head(model.matrix(~ A + A*B, data = foo)) to see the first 6 rows of the design matrix. This is coded using treatment contrasts but others are available. See ?contr.sum for details on the various contrast types built into R.
