Multiple logistic regression

We get an OR for Young children that is 1.30. That means that those who have young children are more likely to also own a pet, compared to those who do not have young children. This association is adjusted for residential area and income.

With regards to residential area, we get an OR for Smaller city of 1.78, whereas the OR for Rural is 4.03. This suggests that those who live in a smaller city are more likely to own a pet, and so are those living in rural areas. These results are adjusted for having young children and income.

Practical example

Dataset
StataData1.dta
Variable name earlyret
Variable labelEarly retirement (Age 50, Year 2020)
Value labels0=No
1=Yes
Variable name bmi
Variable labelN/A
Value labelsN/A
Variable name sex
Variable labelSex
Value labels0=Man
1=Woman
Variable name educ
Variable labelEducational level (Age 40, Year 2010)
Value labels1=Compulsory
2=Upper secondary
3=University
sum earlyret bmi sex educ if pop_logistic ==1

logistic earlyret bmi sex ib1. educ if pop_logistic ==1

In this model, we have three x-variables: bmi , sex , and educ . When we put them together, their statistical effect on earlyret is mutually adjusted.

When it comes to the odds ratios, they have changed in comparison to the simple regression models. For example, the odds ratio for bmi has increased slightly from 1.005 to 1.013. The odds ratio for sex is also higher now: 1.82 instead of 1.70. Concerning the categories of educ , we see that the odds ratio for Upper secondary has also become slightly stronger (i.e. become further from 1) from 0.71 to 0.68, and the odds ratio for University is 0.31 instead of 0.33.

The associations between the sex and earlyret on the one hand, and between educ and earlyret on the other hand, are still statistically significant (p<0.05) after mutual adjustment. The association between bmi and earlyret remains statistically non-significant.

Note
A specific odds ratio from a simple logistic regression model can increase when other x-variables are included. Usually, it is just “noise”, i.e. not any large increases, and therefore not much to be concerned about. But it can also reflect that there is something going on that we need to explore further. There are many possible explanations for increases in multiple regression models: a) We actually adjust for a confounder and then “reveal” the “true” statistical effect. b) There are interactions among the x-variables in their effect on the y-variable. c) There is something called collider bias (which we will not address in this guide) which basically mean that both the x-variable and the y-variable causes another x-variable in the model. d) The simple regression models and the multiple regression model are based on different samples. e) It can be due to rescaling bias (see Mediation analysis).
Summary
In the fully adjusted model, it can be observed that odds ratios for body mass index at age 20, sex, and educational level at age 40, with regard to early retirement at age 50, become slightly stronger in comparison to the simple (unadjusted) models.

Estimates table and coefficients plot

If we have multiple models, we can facilitate comparisons between the regression models by asking Stata to construct estimates tables and coefficients plots. What we do is to run the regression models one-by-one, save the estimates after each, and than use the commands estimates table and coefplot .

The coefplot option is not part of the standard Stata program, so unless you already have added this package, you need to install it:

ssc install coefplot

As an example, we can include the three simple regression models as well as the multiple regression model. The quietly option is included in the beginning of the regression commands to suppress the output.

Run and save the first simple regression model:

quietly logistic earlyret bmi if pop_logistic ==1
estimates store model1

Run and save the second simple regression model:

quietly logistic earlyret sex if pop_logistic ==1
estimates store model2

Run and save the third simple regression model:

quietly logistic earlyret ib1. educ if pop_logistic ==1
estimates store model3

Run and save the multiple regression model:

quietly logistic earlyret bmi sex ib1. educ if pop_logistic ==1
estimates store model4

Produce the estimates table (include the option eform to show odds ratios):

estimates table model1 model2 model3 model4, eform

Produce the coefficients plot (include the option eform to show odds ratios):

coefplot model1 model2 model3 model4, eform

Note
You can improve the graph by using the Graph Editor to delete “_cons” as well as to adjust the category and label names.