Poisson Regression with both categorical and numerical variables: interpreting the outcomes and intercept I have some difficulties in thoroughly interpreting all the outcomes of the Poisson Regression Model.
I have a Poisson regression model with Observed deaths as dependent variable, A categorical variable with 5 levels (ClusterAIR) and Education_level as a numerical variable.  The expected deaths are used as an offset in the Poisson regression model, therefore the rate is observed/expected deaths in the model.
The dataset is divided into 5 clusters and of course I would expect that for the entire dataset (the sum of all 5 clusters) the observed/expected deaths approximate 1, as the expected deaths are calculated based on the entire dataset (corrected for age-structure), and the observed dataset contain the deaths observed in each sector of the dataset.
When running the entirely categorical poisson regression, the result is what I would expect.
Intercept of 0.0756 --> exp(0,0756) = 1.08 : The rate observed/expected deaths in Cluster A (reference Cluster) is 1.08 and for the other clusters, the rate is (1.08 * multiplicative factor) sometimes above 1.00 and sometimes below 1.00. For example, Cluster C has an estimate of -0.18, which implies a multiplicative factor of 0.835 -> 1.08 * 0.835 = 0.90
However, when adding the education level as a numerical variable to the model, the rate observed/expected deaths is ABOVE 1 FOR ALL CLUSTERS (2nd image), despite for the entirety of the dataset the number of expected deaths equals the number of observed deaths. How is this possible ?: How is it possible that all parts of the dataset have a higher than expected mortality (after adding the education level as a covariate) while for the entirety of the dataset the observed deaths equal the expected deaths?  How does the education level as numerical variable exactly interact with the determination of the intercept ? How can I interpret this finding?
For example, the intercept is 0.25  -> exp(0.25)=1.28, the lowest mortality is found in Cluster D with an estimate of -0.10 -> exp (-0.10)= 0.90 (multiplicative factor). The part of the dataset where the observed/expected mortality is the lowest, Cluster D, has still (1.28 *0.9) an observed/expected mortality of > 1.0 while for the entirety of the dataset this number has 1.0, and this only occurs after adding co-variates, when the categorical variable is the only variable, this phenomenom does not appear to happen, and the results are as expected (some clusters have an observed/expected mortality of > 1.0 and others of <1.0 as it is 1.0 for the entirety of the dataset).



In this case education deciles term appears to be a continuous. If it has a minimum of 0 then all estimates are referenced off that 0 value. Predictions  of whatever effect is under consideration would decrease for higher education deciles. Comparing those two models it looks like the ClustAIRD level "interacts" with the Education_Deciles terms the most.
R's default for unordered factor or character variables or character variables is to use "treatment contrasts", so that the first level ClustAIRA effect is incorporated into the Intercept term's estimate and all the others are relative to that estimate. (I do think that aspect is described in my earlier answer.) If the contribution of the lowest level of a particular categorical variable to the Intercept estimate is negative, then all the other levels could easily have a positive value since you would be making predictions reference to that "negative value" for the reference estimate.
You might want to build a model with no Intercept term. The R formula mechanism to do that is to include a "+0" term in the formula. That is particularly useful in situations where you have a correctly specified expected offset. (I make the point of "correctly" because you would want the expected deaths to be log-ged when being used as an offset.) In a way the offset replaces the Intercept as a reference level for predictions. You model is "telling you" that some (but not all) of the clusters other than the lowest level have higher estimate conditional on the education term. That doesn't appear to change that much with the addition of the education term.
There are other contrast specifications that are possible. I think SAS uses a  sum-contrasts default. (Ill go check an edit this answer if I'm wrong.). R is able to to that as well. Look at the docs for ?contrasts. If you assign contr.sum to a particular variable you would expect some of the levels to get a negative and others to get a positive coefficient, because the reference level is the "mean effect".
