Everything You Wanted to Know about Moderation (but were afraid to ask) Jeremy F. Dawson University of Sheffield Andreas W. Richter University of Cambridge
Resources for this PDW Slides SPSS data set SPSS syntax file Excel templates Available at http://www.jeremydawson.com/pdw.htm
Everything You Wanted to Know about Moderation Many theories are concerned with whether, or to which extent, the effect of an independent variable on a dependent variable depends on another, so called ‘moderator’ variable
Example 1: Curvilinear interactions Zhou et al. (2009, JAP): The curvilinear relation between number of weak ties and creativity is moderated by conformity value.
Example 2: Three-way interactions Baer (2012, AMJ): The relationship between creativity and implementation depends on the level of implementation instrumentality and tie strength.
Example 3: Interactions with non- normal outcomes Nadkarni & Chen (2014, AMJ): The relation between CEO temporal focus and number of new product introduction depends on environmental dynamism.
Session organizer 1. Testing and probing two-way and three-way interactions using MRA 2. Non-normal outcomes & curvilinear interactions 3. Extensions of MRA
Testing two-way interactions Ŷ = b 0 + b 1 X + b 2 Z + b 3 XZ Intercept Interaction Predicted Y First order effects term
Testing two-way interactions in SPSS Example data set of 424 employees Independent variables/moderators: Training, Autonomy, Responsibility, Age (all continuous) Dependent variables: Job satisfaction, well being (continuous) Receiving bonus (binary) Days’ absence in last year (count)
Testing two-way interactions in SPSS IV: TRAIN_C Centered variables? Moderator: AGE_C DV: JOBSAT 1. Compute compute TRAXAGE = TRAIN_C*AGE_C. interaction term regression /statistics = r coeff bcov 2. Run regression /dependent = JOBSAT to test moderation /method = enter TRAIN_C AGE_C TRAXAGE.
Centering variables? Why do it? Meaningful interpretation of main effect terms Why not do it? An extra step Makes conditional testing slightly harder Ultimately… it doesn’t matter, as long as the subsequent interpretation is done correctly!
Plotting two-way interactions http://www.jeremydawson.com/slopes.htm - “2 - way_linear_interactions” template
What next? Simple slope tests? Johnson-Neyman technique? Systematic description of interaction?
Simple slope tests: Direct method These figures should be taken from the coefficient covariance matrix (acquired These are then produced using the BCOV keyword in SPSS). automatically: here they tell us that the slope is positive and statistically Note that the variance of a coefficient is significant at both 25 and 55 the covariance of that coefficient with (although less at 55) itself! See Aiken & West (1991) or Dawson (2014) for formula
Simple slope tests: Indirect method Principle: The coefficient of the IV gives the slope when the moderator = 0 Method: “Center” the moderator around the testing value; re-calculate interactions and run the regression Interpretation: The coefficient and p-value of the IV in the new analysis give the result of the simple slope test compute AGE_55 = AGE-55. compute TRAXAGE_55 = TRAIN_C*AGE_55. regression /statistics=r coeff bcov /dependent=JOBSAT /method=enter TRAIN_C AGE_55 TRAXAGE_55.
Simple slope tests: Some thoughts Simple slope tests are far more sensible when meaningful values of the moderator are used Ensure correct values are chosen after centering decision is made! Here, for example, AGE was centered around the mean (41.55), so ages of 25 and 55 are actually -16.55 and 13.45 respectively Choosing values 1 SD above and below the mean is arbitrary and should generally be avoided Remember, statistical significance merely indicates a difference from zero – it says nothing about the size or importance of an effect
J-N regions of significance and confidence bands (Bauer & Curran, 2006)
Alternative approach Aim: to describe the interaction in a meaningful way No specific hypotheses to test Needs to encompass all three parts of interaction effect (IV, moderator, interaction term) New typology: describes all three elements in a Positive but disordinal more systematic way moderator effect Positive interaction (Dawson & Richter, with effect size X 2019) Wholly positive main effect
Suggested approach (numerical Z) Plot interaction Evaluate whether X-Y relationship is significant at mean value of Z Evaluate whether X-Y relationship is positive or negative at extreme values of Z Examine moderator effect similarly Describe effect(s) in full: is it always positive, mostly positive, crossover? Give effect size (with confidence interval): b 3 is the expected amount by which the X-Y relationship changes, for a one unit change in the moderator DON’T use simple slope tests unless there is a specific hypothesis to test at a meaningful value of Z
Better plotting…
R Syntax Produces plot of this type (showing slopes at extreme values of Z, mean value of Z, and 10 th & 90 th percentiles with confidence bands) Also gives fuller description of interaction, including effect size Available with PDW resources at http://www.jeremydawson.com/pdw.htm
Testing two-way interactions with binary variables Whether IV or moderator (or both), preferable to code as 0/1 Otherwise exactly the same pattern is used Simple slope tests definitely more meaningful! If more than two categories, may be easier to use ANCOVA
Testing three-way interactions Ŷ = b 0 + b 1 X + b 2 Z + b 3 W + b 4 XZ + b 5 XW + b 6 ZW + b 7 XZW 3-way Lower order interaction effects term
Probing three-way interactions: Slope difference tests (Dawson & Richter, 2006) Hypothesis 2: Training predicts job satisfaction most strongly for younger workers with high autonomy.
Testing three-way interactions WARNING!! Is your theory good? Is your measurement good?
Testing three-way interactions H2: Training predicts job satisfaction most strongly for younger workers with high autonomy. compute TRAXAUT = TRAIN_C*AUTON_C. 1. Compute compute AUTXAGE = AUTON_C*AGE_C. remaining compute TRXAUXAG = TRAIN_C*AUTON_C*AGE_C. interaction terms regression /statistics=r coeff bcov /dependent=JOBSAT /method=enter TRAIN_C AUTON_C AGE_C 2. Run regression to test moderation TRAXAUT TRAXAGE AUTXAGE TRXAUXAG.
Plotting three-way interactions http://www.jeremydawson.com/slopes.htm - “3 - way_linear_interactions” template
Slope difference test These figures should be taken from the These are then produced automatically: here we coefficient covariance matrix (acquired find that slope 3 (age 25, high autonomy) is using the BCOV keyword in SPSS) significantly greater than the other three slopes Be careful about the order: SPSS It is important to hypothesize which slopes should sometimes switches this around! be different from each other! See Dawson & Richter (2006) or Dawson (2014) for formulas
Probing three-way interactions: What should you do? If you have a hypothesis, formulate this clearly This should inform you what simple slope tests, or slope difference tests, you need to perform If you have no reason to perform a test, don’t do it! If purely exploratory, then test away: but apply appropriate caution to results
End of section 1: Questions?
Session organizer 1. Testing and probing two-way and three-way interactions using MRA 2. Non-normal outcomes & curvilinear interactions 3. Extensions of MRA
Interactions with Non-Normal outcomes Hypothesis 3: Employees with more responsibility are more likely to receive a bonus when they are older
Testing interactions with binary outcomes Binary logistic regression Logit (Ŷ) = b 0 + b 1 X + b 2 Z + b 3 XZ Logit link function Note: Logit(Ŷ) = ln[Ŷ/(1 - Ŷ)]
Testing an interaction with a binary outcome logistic regression variables BONUS Logistic regression syntax: no need to /method = enter RESP_C AGE RESP_C*AGE. compute interaction term separately!
Plotting an interaction with a binary outcome http://www.jeremydawson.com/slopes.htm - “2 - way_logistic_interactions”
Probing interactions with non-normal outcomes Simple “slope” tests need to be done using the indirect method e.g. for AGE = 25: compute AGE_25 = AGE-25. logistic regression variables BONUS /method = enter RESP_C AGE_25 RESP_C*AGE_25. Check value/significance of this term
Testing interactions with discrete (count) outcomes Poisson or Negative Binomial regression Log (Ŷ) = b 0 + b 1 X + b 2 Z + b 3 XZ Natural log link function
Curvilinear effects Ŷ = b 0 + b 1 X + b 2 X 2
Recommend
More recommend