Why do I have to subtract 1 from R regression to measure fixed effects? Beginner's question probably. I would like to know why, to measure country fixed effects, I need to subtract one from the factor variable that I would like to consider as a fixed effect.
For example, I want to consider country and year fixed effects, so my regression model is:
lm(Premium ~ Brand + factor(Country) - 1 + factor(Year) -1 + 
              Population + Employment + Inflation, data=df)

From what I understand, the -1 after each factor is due to the fact that I need to subtract one baseline country/year from which to measure the fixed effects. However, in the regression output, I get a coefficient for all 18 countries in my data. Shouldn't one country be "missing" from the list of results since it is the baseline? Instead, if the output is correct, what's the right interpretation and what is the default baseline R considers? Below is the output:


Original Answer
Using the -1 or 0 operator in your regression equation simply suppresses the intercept. Normally when you include a factor into your regression, the first level of your categorical factor will be the reference group, and will be used as the intercept as a result. From there, each coding of the coefficients in your model (including the factor) will be a linear combination that adjusts this intercept.
All that this accomplishes is removing the reference point and just includes the labels of each coefficient directly instead. This thread has a lot of info on this subject. I would advise against doing that unless you have a really good reason to. Kjetil's answer has some exceptions listed, but I don't think your regression would qualify.
Edit for Clarity
My answer has already been accepted, but after looking at the comments, it appears that I should make an edit to this answer. These are the formal recommendations listed in Hahn, 1977 for fitting a no-intercept model with continuous-only predictors:

However, in the case of a regression with a categorical factor, while you can always include an intercept by default, suppressing the intercept is not necessarily a problem. As highlighted by Sextus below in the comments:
$$
a + bx_1 + cx_2 \\ = \\ 0 + (a+b)x_1 + (a+c)x_2
$$
The coefficients therefore change numerically, but their estimates are only shifts from the original dummy-coded intercept. Therefore the interpretation of either the intercept-model or no-intercept model would have essentially the same linear solution.
Citation

*

*Hahn, G. J. (1977).
