# Interpret Logistic Regression with Interactions using R

I ran the following logistic regression in R where the dependent variable (Success) is 1 if the student graduates and 0 if the student does not graduate:

    Call:
glm(formula = Success ~ Core.GPA + Lab.Yr.Taken + Frn.Lang.Yr.Taken +
SAT.Converted + Incoming.Test, family = binomial, data = df)

Deviance Residuals:
Min       1Q   Median       3Q      Max
-2.7123  -1.2211   0.6501   0.8495   1.3955

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept)       -4.094e+00  6.007e-01  -6.816 9.39e-12 ***
Core.GPA           1.024e+00  9.916e-02  10.329  < 2e-16 ***
Lab.Yr.Taken       1.220e-01  2.904e-02   4.200 2.66e-05 ***
Frn.Lang.Yr.Taken  6.335e-02  3.115e-02   2.034    0.042 *
SAT.Converted      9.867e-05  3.759e-04   0.262    0.793
Incoming.Test      4.018e-02  3.332e-03  12.056  < 2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 7022.5  on 5947  degrees of freedom
Residual deviance: 6573.9  on 5942  degrees of freedom
(1108 observations deleted due to missingness)
AIC: 6585.9

Number of Fisher Scoring iterations: 4


Here are the Odds Ratio for that model:

  (Intercept)          Core.GPA      Lab.Yr.Taken Frn.Lang.Yr.Taken
0.01666638        2.78504399        1.12973489        1.06540330
SAT.Converted     Incoming.Test
1.00009867        1.04099486


My interpretation here (using Incoming.Test as an example) is: "Odds of success increase by 4.1% for each additional one unit increase in Incoming Test Credit" (1.04099486-1) x 100

However, I'd like to know if being a first generation student impacts these odds ratio and if so how? (i.e., does the likelihood that a student graduates based on any of my independent variables differ for a first gen and non first gen student?) To determine this, I ran the model again and set First Generation as an interaction variable with all variables in model.

Call:
glm(formula = Success ~ (Core.GPA + Lab.Yr.Taken + Frn.Lang.Yr.Taken +
SAT.Converted + Incoming.Test) * firstGen, family = binomial,
data = df)

Deviance Residuals:
Min       1Q   Median       3Q      Max
-2.6380  -1.1061   0.6362   0.8186   1.8288

Coefficients:
Estimate  Std. Error z value Pr(>|z|)
(Intercept)                   -3.5094889  0.6705484  -5.234 1.66e-07 ***
Core.GPA                       1.0698918  0.1087680   9.836  < 2e-16 ***
Lab.Yr.Taken                   0.0971983  0.0316549   3.071  0.00214 **
Frn.Lang.Yr.Taken              0.0377991  0.0338970   1.115  0.26480
SAT.Converted                 -0.0001896  0.0004232  -0.448  0.65418
Incoming.Test                  0.0358615  0.0035690  10.048  < 2e-16 ***
firstGenYes                   -1.7697353  1.6092509  -1.100  0.27145
Core.GPA:firstGenYes           0.3528697  0.2899914   1.217  0.22367
Lab.Yr.Taken:firstGenYes       0.0928141  0.0811118   1.144  0.25251
Frn.Lang.Yr.Taken:firstGenYes  0.1247308  0.0900435   1.385  0.16598
SAT.Converted:firstGenYes     -0.0009749  0.0010075  -0.968  0.33319
Incoming.Test:firstGenYes      0.0296594  0.0106095   2.796  0.00518 **
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 7022.5  on 5947  degrees of freedom
Residual deviance: 6483.5  on 5936  degrees of freedom
(1108 observations deleted due to missingness)
AIC: 6507.5

Number of Fisher Scoring iterations: 4


and odds ratio:

              (Intercept)                      Core.GPA
0.0299122                     2.9150640
Lab.Yr.Taken             Frn.Lang.Yr.Taken
1.1020789                     1.0385226
SAT.Converted                 Incoming.Test
0.9998104                     1.0365123
firstGenYes          Core.GPA:firstGenYes
0.1703781                     1.4231457
Lab.Yr.Taken:firstGenYes Frn.Lang.Yr.Taken:firstGenYes
1.0972578                     1.1328434
SAT.Converted:firstGenYes     Incoming.Test:firstGenYes
0.9990255                     1.0301036


What I'm hoping to learn from these models is:

1. For Non-First Gen students, the odds of success increase/decrease by _% for each additional one unit increase in Incoming test Credit.

My assumption on this so far is: The odds ratio for Incoming.Test (1.0365123) represents the odds ratio for NON-first Generation students (aka, for non-first gen students odds of success increase by 3% for each additional increase in incoming test credits).

2. Same question as above, but for First Gen students.

??? Is a calculation needed to determine this?

3. What is the difference in odds between first gen and non first gen students

My assumption so far: The odds ratio for IncomingTestxFirstGen (1.03010136) represents the difference in odds between first gen and non first gen???

4. Is First Generation status significant or non significant when considering odds of success based on Incoming test credits?

My assumption: Yes, the difference is significant because IncomingTestxFirstGen is significant.

5. What does the "firstGenYes" odds ratio in the second model indicate/represent?

???

I would appreciate any feedback regarding my initial interpretation attempts! I have reviewed questions similar to this that have already been asked, but have not came across any explanation that fully encapsulates what I’m after. Thank you.

All of these questions are easily answered by understanding who the reference person is. Let's examine a slightly simpler model, perhaps Success ~ Incoming.Test*firstGen. Mathematically, the model is

$$\operatorname{logit}(p) = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \beta_3 x_1 x_2$$

Here, let incoming test be $$x_1$$ and firstGen be $$x_2$$.

The reference group would be a non-first generation student with an incoming test score of 0. That corresponds to just the intercept $$\beta_0$$.

A non first generation student who scores a 1 on the incoming test would have a log odds of success equal to $$\beta_0 + \beta_1$$. A non first generation student who scores a 2 on the incoming test would have a log odds of success equal to $$\beta_0 + 2\beta_1$$.

A first generation student who scored a 1 on the incoming test would have a log odds of success equal to $$\beta_0 + \beta_1 + \beta_2 + \beta_3$$. A first generation student who scored a 2 on the incoming test would have a log odds of success equal to $$\beta_0 + 2\beta_1 + \beta_2 + 2\beta_3$$.

Now, let's compare how a change in incoming test changes the log odds for both groups. First, the non first generation students. The difference in log odds between non first generation students who differ by 1 point on the incoming test is $$\beta_1$$. The odds ratio is then $$\exp(\beta_1)$$.

The difference in log odds between first generation students who differ by 1 point on the incoming test would be $$\beta_1 + \beta_3$$. The odds ratio would then be $$\exp(\beta_3)\exp(\beta_1)$$.

This strategy applies to your first two questions.

As for the remaining questions, I can answer with a little more brevity.

1. Because you include interactions, the difference between first gen and non first gen students depends on the values of the other variables.

2. This is an illposed question. Because you include interactions, I think a more salient question is "Does the model which includes these interactions explain the variation in the data more than I would expect under chance?". You can address this with a likelihood ratio test between your two models.

3. firstGenYes is the additive effect of being a 1st generation student when the other (interacting) variables are all exactly 0. Were you to mean center the continuous variables, then the interpretation would simply be the additive effect of being a first generation student.

• Re #5, it isn't generally possible to hold all other variables constant. It is the odds ratio associated with being a 1st generation student when the other (interacting) variables are all exactly 0. Commented Aug 11, 2021 at 18:10
• @gung-ReinstateMonica Yes, thank you. OP, if you rescale continuous variables so that they are mean centered, then my interpretation would hold. Commented Aug 11, 2021 at 18:43
• If you edit this, I could upvote it... Commented Aug 11, 2021 at 18:49
• @gung-ReinstateMonica Edited. Thanks Commented Aug 11, 2021 at 19:17
• Even if you center, it's still only the log of the odds ratio associated w/ being a 1st generation student when all other (interacting) variables are held constant--ie, when they are at their means. That may be more interpretable / useful, but it's a very precarious conditional statement. The model doesn't allow for a general "additive effect of being a first generation student". Commented Aug 11, 2021 at 20:13