# Regression coefficient overestimated in full model

I have constructed a linear regression model in R using the lm function. I was hoping someone could explain to me why when I run my full model I get an overestimate of the categorical variables. For instance, the intercept - I understand that this means the Biomass when all continuous variables = 0 but also when it is compared to the reference reef (Admiral Reef) and the reference season (Fall) and the reference species (O. annularis).

However, when I run a model with just the categorical variables I get a totally different estimate (and one that is closer to the actual values).

Here are the means for the whole dataset

• Curious on why I was down voted - I searched the site and have found no understandable answers – Danib90 Mar 16 '17 at 19:55
• Questions about the interpretation of a statistical analysis belong on Cross Validated, not Stack Overflow because they are not specific programming questions. – MrFlick Mar 16 '17 at 19:56
• @MrFlick Apologies - anyway I can migrate it over so I do not duplicate? – Danib90 Mar 16 '17 at 19:58
• The regression coefficient for, say, O. faveolata (the value in the Estimate column) is the predicted difference in Biomass when the species is O. faveolata relative to when the species is O. annularis, with all other variables held fixed. That coefficient (and all the other coefficients) will in general be different between your two models because the first model controls for many more variables than the second model. – eipi10 Mar 16 '17 at 20:11
• The intercept in a linear regression is equal to $\overline{Y} - \overline{X_1}\hat{\beta}_{1,OLS}-\overline{X_2}\hat{\beta}_{2,OLS}-\ldots$. The intercept adjusts so that the estimated regression line passes through the mean of the data. Suppose you include a new variable in a regression and that the new variable has a negative coefficient and a positive mean (to make things easy, assume the other coefficients are not affected). That will move the line down, on average. The intercept will adjust up to keep the line going through the middle of the data. – Bill Mar 16 '17 at 23:10