Tutorials › Exam SRM - Statistics for Risk Modeling › Common Errors in Interaction Interpretation

Exam SRM · Multiple Regression Estimation · Tutorial 53 of 926

Common Errors in Interaction Interpretation

Interpret lower-order coefficients in interaction models by identifying the reference value and calculating the relevant conditional slope or group difference.

Intermediate 10 min read

What You'll Learn

  • Identify the predictor value at which a lower-order coefficient applies.
  • Calculate a continuous predictor’s slope at a specified value of its interacting predictor.
  • Interpret how an interaction coefficient changes a slope or group difference.
  • Distinguish a binary-group difference from either group’s slope.
  • Recenter an interacting predictor and interpret the changed coefficients.
  • Detect misleading interpretations when the reference value is not meaningful or observed.

Why Interaction Coefficients Are Easy to Misread

In a regression model with an interaction, the association between one predictor and the response can depend on the value of another predictor. The coefficient of a predictor that appears on its own—the lower-order coefficient—therefore usually describes a slope or difference at a particular reference value, not an unconditional effect that applies everywhere.

The key is to read each coefficient in the context of the entire model. In particular, locate the interacting predictor’s value that makes the product term zero. At that reference value, the corresponding lower-order coefficient has a direct interpretation. At other values, calculate the relevant conditional slope or difference using the interaction coefficient.

Model and assumptions: For two continuous predictors \(x\) and \(z\), consider the regression mean \(E(Y\mid x,z)=\beta_0+\beta_1x+\beta_2z+\beta_3xz\). The observed response can be written as this mean plus an error with conditional mean zero. The coefficient interpretations below concern the specified conditional mean; they do not, by themselves, establish a causal effect. No assumption about constant error variance is needed just to interpret these coefficients.

The coefficient \(\beta_1\) is the slope for \(x\) when \(z=0\), and \(\beta_2\) is the slope for \(z\) when \(x=0\). The interaction coefficient \(\beta_3\) describes how either slope changes as the other predictor increases by one unit. These statements use the units in which the predictors are recorded.

Deriving the Conditional Slopes

To find the slope for \(x\) at a fixed value of \(z\), hold \(z\) constant and compare the fitted mean at \(x+h\) with the fitted mean at \(x\). Subtracting the two fitted values gives \((\beta_1+\beta_3z)h\). Dividing by \(h\) gives the slope, for any nonzero change \(h\):

$$ \frac{E(Y\mid x+h,z)-E(Y\mid x,z)}{h} =\beta_1+\beta_3z. $$

The same result follows by differentiating the regression mean with respect to \(x\). Similarly, the slope for \(z\) at fixed \(x\) is \(\beta_2+\beta_3x\). Thus \(\beta_3\) is the change in the \(x\)-slope for a one-unit increase in \(z\), and also the change in the \(z\)-slope for a one-unit increase in \(x\). This does not mean that either slope always equals \(\beta_3\).

1
Identify the target slope.
For the slope of \(x\), keep the coefficient of \(x\) and the interaction coefficient.
2
Substitute the specified value.
Use \(\beta_1+\beta_3z\) for the \(x\)-slope at the given \(z\); use \(\beta_2+\beta_3x\) for the \(z\)-slope at the given \(x\).
3
State the result with units and context.
Describe the predicted change in the response for a one-unit increase in the predictor, conditional on the stated value of the other predictor.

Worked Example: Finding a Slope at Two Risk-Score Values

A hypothetical insurer models expected annual claim cost \(Y\), in dollars, using claim-free years \(x\) and a risk score \(z\), measured in points: \(E(Y\mid x,z)=120+18x+7z-2xz\). Calculate the claim-free-years slope at risk scores 3 and 6, and compare the predictions for a policyholder with \(x=4\) at those scores.

Method. Use the conditional slope formula \(\beta_1+\beta_3z\). Here \(\beta_1=18\) and \(\beta_3=-2\), so the slope is \(18-2z\) dollars per additional claim-free year.

At \(z=3\), the slope is \(18-2(3)=18-6=12\) dollars per additional claim-free year. At \(z=6\), it is \(18-2(6)=18-12=6\) dollars per additional claim-free year.

For \(x=4,z=3\), the fitted mean is \(120+18(4)+7(3)-2(4)(3)=120+72+21-24=189\) dollars. For \(x=4,z=6\), it is \(120+18(4)+7(6)-2(4)(6)=120+72+42-48=186\) dollars.

Check. At either score, increasing \(x\) by one changes the fitted mean by the slope already calculated: at \(z=3\), the prediction would rise from 189 to \(189+12=201\); at \(z=6\), it would rise from 186 to \(186+6=192\). The interaction makes the claim-free-years slope smaller at the higher score. Common mistake avoided: treating 18 as the slope at every score. It is the slope only when \(z=0\).

Binary-by-Continuous Interactions

A common interaction pairs a continuous predictor \(x\) with an indicator \(D\), where \(D=0\) denotes a reference group and \(D=1\) denotes another group. The model is \(E(Y\mid x,D)=\beta_0+\beta_1x+\beta_2D+\beta_3xD\). Setting \(D\) to each possible value produces the group-specific fitted lines. The coefficient \(\beta_2\) is the group difference at \(x=0\), while \(\beta_3\) is the difference between the groups’ slopes.

$$ \begin{aligned} D=0:\quad E(Y\mid x,D=0)&=\beta_0+\beta_1x,\\ D=1:\quad E(Y\mid x,D=1)&=(\beta_0+\beta_2)+(\beta_1+\beta_3)x. \end{aligned} $$

Subtracting the \(D=0\) fitted mean from the \(D=1\) fitted mean gives \(\beta_2+\beta_3x\). Therefore, \(\beta_2\) is not generally the group difference at every \(x\); the group difference changes with \(x\) when \(\beta_3\ne0\). This is a discrete comparison between indicator values, not a derivative with respect to \(D\).

Worked Example: Separating Group Slopes from Group Differences

A hypothetical analyst predicts monthly service cost \(Y\), in dollars, from annual usage \(x\), measured in thousands of units, and an indicator \(D\) for enrollment in a support program. The fitted model is \(E(Y\mid x,D)=450+12x-40D+5xD\). Find each group’s slope, the program-group difference at \(x=8\), and both fitted means at that usage level.

Method. Substitute \(D=0\) and \(D=1\) to obtain the group-specific lines. For \(D=0\), the fitted mean is \(450+12x\), so the slope is 12 dollars per additional thousand units. For \(D=1\), it is \(450+12x-40+5x=410+17x\), so the slope is 17 dollars per additional thousand units. The interaction coefficient 5 is the difference in slopes, \(17-12=5\).

The program-group difference at usage \(x\) is \(-40+5x\). At \(x=8\), this is \(-40+5(8)=-40+40=0\) dollars. The fitted mean for \(D=0\) is \(450+12(8)=450+96=546\) dollars. For \(D=1\), it is \(410+17(8)=410+136=546\) dollars.

Check. The two fitted means agree at \(x=8\), as the calculated group difference of zero requires. Common mistake avoided: interpreting \(-40\) as the program group’s difference at every usage level. It is the difference only at \(x=0\); at \(x=8\), the interaction adds 40 dollars to that difference.

What Changes When Predictors Are Recentered?

A reference value of zero may not be typical or even represented in the data. Replacing \(z\) by a centered predictor can make the lower-order coefficient refer to a more useful value. If \(z_c=z-c\), then \(z=z_c+c\). Substitution into the interaction model gives

$$ \begin{aligned} \beta_0+\beta_1x+\beta_2z+\beta_3xz &=(\beta_0+c\beta_2)+(\beta_1+c\beta_3)x+\beta_2z_c+\beta_3xz_c. \end{aligned} $$

The coefficient of \(x\) in the centered model is \(\beta_1+c\beta_3\), exactly the original \(x\)-slope at \(z=c\). Recentring changes the coefficient’s reference point, not the fitted mean for a given original pair \((x,z)\). The interaction coefficient remains the same under this shift. This is useful for interpretation, but it does not make a reference point meaningful if it lies outside the data or the intended application.

Worked Example: Recentring to Make a Lower-Order Coefficient Useful

A hypothetical model predicts an account’s annual service cost \(Y\), in dollars, from account age \(x\), in years, and balance \(z\), in units of \$10,000: \(E(Y\mid x,z)=80+3x+10z-1.5xz\). Recenter balance at \(z=4\), then find the account-age slope at balances \(z=4\) and \(z=6\).

Method. Set \(z_c=z-4\), so \(z=z_c+4\). Substitute and collect terms: \(80+3x+10(z_c+4)-1.5x(z_c+4)\) \(=80+3x+10z_c+40-1.5xz_c-6x\) \(=120-3x+10z_c-1.5xz_c\). Thus the coefficient of \(x\) in the centered model is \(-3\), the age slope when \(z_c=0\), or equivalently when \(z=4\).

At \(z=4\), the age slope is \(3-1.5(4)=3-6=-3\) dollars per additional year. At \(z=6\), it is \(3-1.5(6)=3-9=-6\) dollars per additional year. Using the centered form, \(z_c=6-4=2\), and the slope is \(-3-1.5(2)=-3-3=-6\), which agrees.

Check. The slope calculations from the original and centered models match at both balances. The recentered intercept, 120, is the fitted mean at \(x=0,z=4\). Common mistake avoided: assuming that the original coefficient 3 remains the age slope after accounting for the interaction. It applies only at \(z=0\).

Common Interpretation Traps

  • Calling a lower-order coefficient the overall slope. In a continuous interaction model, \(\beta_1\) is the \(x\)-slope at \(z=0\), not at an arbitrary \(z\). Calculate \(\beta_1+\beta_3z\) for the value in the question.
  • Confusing a group difference with a slope difference. With a binary-by-continuous interaction, \(\beta_2\) is the group difference at \(x=0\), and \(\beta_3\) is the difference in group slopes. The group difference at \(x\) is \(\beta_2+\beta_3x\).
  • Ignoring units. If \(x\) is measured in thousands of units, a slope is per additional thousand units, not per single unit. Likewise, \(\beta_3\) is a change in slope per one unit of the interacting predictor.
  • Forgetting the reference point. If zero is outside the observed range, the lower-order coefficient may describe an extrapolated slope or difference. State the reference value explicitly; consider whether recentering would give a more relevant interpretation.
  • Claiming causation from a fitted interaction. An interaction describes how the model’s conditional association varies with a predictor. A causal interpretation requires additional design and assumptions beyond the regression equation.
Key takeaway: In an interaction model, first identify the value that makes the product term zero. A lower-order coefficient applies at that reference value; away from it, calculate the conditional slope or group difference by including the interaction term.

Check Your Understanding

For each problem, identify the relevant reference value and use the full interaction model rather than interpreting a coefficient in isolation.

  1. A fitted mean is \(300+8x+6z-2xz\), where \(x\) is measured in years and \(z\) in points. Find the slope for \(x\) at \(z=2\), and state the slope represented by the lower-order coefficient of \(x\). (Answer: At \(z=2\), the \(x\)-slope is \(8-2(2)=4\) response units per year; the coefficient 8 is the slope at \(z=0\).)
  2. A fitted mean is \(90+5x+12D-3xD\), with \(D=0\) the reference group and \(D=1\) the comparison group. Find both slopes and the group difference at \(x=4\). (Answer: The slopes are 5 for \(D=0\) and \(5-3=2\) for \(D=1\); the difference \(D=1\) minus \(D=0\) at \(x=4\) is \(12-3(4)=0\).)
  3. A model is \(50+4x+9z+2xz\). Recenter \(z\) at 3 by setting \(z_c=z-3\). Give the coefficient of \(x\) in the recentered model and interpret it. (Answer: The coefficient is \(4+2(3)=10\), the \(x\)-slope at \(z=3\).)
  4. A model for a monthly hypothetical benefit amount is \(700+15x-30D+4xD\), where \(x\) is the number of qualifying events and \(D\) indicates an optional rider. Find both fitted amounts at \(x=10\), and explain what \(-30\) represents. (Answer: Without the rider, \(700+15(10)=850\); with it, \(700-30+(15+4)(10)=860\). The rider difference at \(x=0\) is \(-30\), not the difference at every \(x\).)
  5. A continuous interaction model has \(E(Y\mid x,z)=40-2x+5z+0.5xz\). Find the \(z\)-slope at \(x=6\), then find the change in that slope when \(x\) rises from 6 to 10. (Answer: At \(x=6\), the \(z\)-slope is \(5+0.5(6)=8\); at \(x=10\), it is 10, so the slope increases by 2 response units per unit of \(z\).)
Clinical Biostats