Decomposing Interactions Using Glm in Combination with the Compare, Lmatrix and Mmatrix Subcommands in Spss

In this tutorial, we provide researchers who use SPSS step-by-step instructions for decomposing interactions when a three-way ANOVA is conducted using the GLM procedure. We start with a demonstration of how a two-way interaction can be decomposed using the COMPARE subcommand in combination with syntax. Then, we provide instructions with examples for conducting simple interaction and second-order simple effects analyses for three-way ANOVAs with between-subjects, within-subjects, and mixed between-and within-subjects variables using the LMATRIX or MMATRIX subcommands. Provided in Appendices are general rules that can be used to derive design-specific LMATRIX and MMATRIX subcommands. Since the release of SPSS 7.5, the General Linear Model (GLM) procedure has become the only way of conducting analyses of variance (ANOVAs) in SPSS without resorting to syntax (Nichols, 1997). Introduced in replacement of the MANOVA procedure, GLM allows users to conduct between-subjects, within-subjects, and mixed-design ANOVAs by following the steps prescribed in a short series of dialog boxes that are fairly intuitive to use. Moreover, in addition to generating F Tables, GLM lets users run a wide range of complementary tests and statistics. Hence, by clicking relevantly labeled options, users can obtain tests of assumptions, descriptive statistics, power analyses, effect sizes, and plots. Finally, GLM allows users to perform post hoc analyses when significant main effects are found. Once again, these tests are easy to access via the dialog boxes, they are explicitly labeled, and in the case of between-subjects designs, the number of available tests is large (e.g. LSD, Scheffe, Tukey…). Hence, it is not surprising that many introductory textbooks now describe how to use GLM and how to interpret its outputs (e.g., Field, 2005; Tabachnick & Fidell, 2007) 1. Unfortunately, the GLM procedure in SPSS does not offer a simple, intuitive, and user-friendly way of decomposing interactions when factorial designs are used. This is especially true when the ANOVA includes three independent variables. Hence, the goal of this tutorial paper 1 Nonetheless, GLM may still not be the most popular way to run ANOVAs in SPSS. An internet search conducted November 17th, 2010 using Google generated 106 000 hits for the keywords " MANOVA SPSS " , whereas it generated 85 500 hits for the keywords " GLM SPSS ". MANOVA probably remains popular because it preceded GLM and it works well. Hence, for researchers who do not mind using syntax to run all their analyses, there is no incentive to change …

example which exactly replicates the research design that is of concern to them in this tutorial.Hopefully, however, it will be possible for them to customize the syntax presented herein to meet their analytical needs.Finally, this tutorial focuses on decomposing interactions in SPSS, and therefore does not demonstrate how to conduct post hoc pairwise comparisons following a significant main effect (Many references including Field, 2005 describe how SPSS may be used to conduct post hoc analyses).

How does GLM work?
For the purpose of this paper, we will not describe the theory behind the GLM, nor the algorithms used.We will, however, provide a brief description of how the GLM works in order to help the reader understand how the LMATRIX and MMATRIX can be customized to test specific contrasts.Most generally, contrasts on a user specified GLM test whether the null hypothesis for a linear combination of parameter estimates is likely to be true.For a betweensubjects design, the null hypothesis is H0: LB = K, where L represents the contrast coefficients matrix (LMATRIX), B represents a vector of estimated parameters, and K represents the contrast results matrix (KMATRIX).By default, the LMATRIX is the estimated function for the intercept and the KMATRIX is 0 (SPSS inc., 2009a).As we will illustrate later on, a researcher may customize the LMATRIX to test any contrast on the parameter estimates by specifying a corresponding set of weighting coefficients in the Syntax Editor.As such, it is possible to test the null hypothesis that the user-specified linear combination of weighted parameter estimates is 0.
For a within-subjects or mixed-design, the null hypothesis is H0: LBM = K, where the new term M represents the transformation coefficients matrix (MMATRIX).By default, the MMATRIX corresponds to the average transformation matrix for the dependent variables (i.e., the levels of the within-subjects variables; SPSS inc., 2009b).As we will show later on, a researcher may customize LMATRIX or MMATRIX in a within-subject or mixed-design, to test any contrast or comparison of interest by specifying a set of weighting coefficients for these matrices in the Syntax Editor.By customizing LMATRIX or MMATRIX, the GLM procedure tests the null hypothesis that the specified linear combination of weighted parameter estimates is 0.

Decision tree
Throughout this tutorial, we will use the decision tree presented in Figure 1 in combination with plots of means of fictional data to show how to decompose significant twoand three-way interaction effects.The decision tree is meant to be a guideline for conducting post hoc analyses on a twoor three-way factorial design.To facilitate comprehension, we will work backwards through the decision tree, starting with a significant two-way interaction.
The reader should note that this tutorial illustrates a simple effects approach to the decomposition of interaction effects.This is not the only way to decompose interaction effects, however.For example, Keppel (1991, Chapters 12 & 20) describes an interaction comparisons and contrasts approach.Although this latter approach is not adopted in this tutorial, the LMATRIX and MMATRIX subcommands in GLM can be used to conduct it.

A two-way interaction is found
In this next section, we will explain how to analyze simple effects when a two-way interaction is found.We will also introduce the Syntax Editor.This example will involve the data found in the file case1.sav.
The appropriate design to analyze these data is a 2 × 2 × (3) (A[1, 2] × B[1, 2] × C[1, 2, 3]) mixed-design ANOVA, with C as a within-subjects variable2 .Under the "Analyze" menu, the researcher would go to "General Linear Model" and then select "Repeated Measures...".Next, in the "Repeated Measures Define Factor(s)" dialog box, the researcher would provide a name for the within-subjects variable in the "Within-Subject Factor Name:" box, put the number of levels in the "Number of Levels:" box, and click on "Add" then "Define".Then, in the "Repeated Measures dialog box", the researcher would put the levels of the within-subjects variable in the "Within-Subjects Variables (name):" box and the between-subjects variables in the "Between-Subjects Factor(s):" box, then click "OK".In the output, the tables of Tests of Within-Subjects Effects and Tests of Between-Subjects Effects show that the three-way interaction is not significant (p = .89)and only the two-way B × C interaction is significant (p < .001).A plot of the two-way interaction shown in Figure 2 was generated using the "Plots..." menu in the "Repeated Measures" dialog box.
The reader can infer from the plot that the interaction stems from the difference between the first and second levels of B at the second and third levels of C. To verify this impression, the decision tree presented in Figure 1 suggests that the researcher should analyze first-order simple effects.To do so, the researcher would have two choices: examine the impact of C on each of the levels of B or examine the impact of B on each of the three levels of C. In an actual research situation, the choice between these two options would be guided by theoretical considerations.Throughout this tutorial, however, the choice that directly tests the impression formed when examining the plot of means will be made.Hence, for the present example, we will examine the simple effect of B at each of the three levels of C.
To examine these simple effects, the researcher would first define the mixed-design ANOVA and then click the "Options…" button in the "Repeated Measures" dialog window.The next step is to send the B*C interaction into the "Display Means for:" box and click "Continue".The researcher would then click the "Paste" button instead of the  "OK" button in the "Repeated Measures" dialog window.This opens a Syntax Editor window instead of running the analysis (see Figure 3).The B*C interaction that was sent into the "Display Means for:" box generated an "/EMMEANS = TABLES(B*C)" line in the syntax.This line of syntax creates descriptive statistics for the interaction.It also may be customized to generate simple effects tests.Specifically, the researcher would type "COMPARE" one space after the "/EMMEANS = TABLES(B*C)" line and define the to-be-decomposed variable within parentheses.In Figure 3, "COMPARE(B)" was added in order to test the simple effect of B at each level of C. To run the ANOVA and all subcommands, the researcher simply needs to highlight the syntax with the cursor and run it by right clicking and then selecting the "Run Current" option.Researchers may use this procedure for a simple effects analysis on a two-way interaction for a between-subjects, within-subjects, or mixeddesign.
When the analysis is run, the output includes a Univariate Tests table (see Figure 4) and a Pairwise Comparisons table because a between-subjects variable was chosen 3 .The output shows that the difference between the two levels of B is not significant at the first level of C (p = 1.00), but is significant at the second and third levels of C (both ps < .001).Because B only has two levels, the Pairwise Comparisons table is redundant 4 .These results confirm the impression formed when examining Figure 2. Specifically, the results show that the two-way B × C interaction stems from the fact that B has a significant impact on the second and third levels of C, but not at the first level of C.
The reader may wonder why we did not simply rerun the ANOVA using the Univariate procedure in GLM with B in the "Fixed Factor:" box and hold the level of C constant by putting C1, C2, or C3 in the "Dependent Variable:" box.This approach would provide the Mean Square Error for the selected simple effect, whereas the COMPARE approach provides the Mean Square Error for the overall A × B × C interaction effect, which is considered more stable because it involves all cells in the factorial design instead of only those cells involved in the selected simple effect.However, if there are large discrepancies among the error variances for the different levels of C (noted by a violation of homogeneity of variance), the reader would be well advised to rerun three separate ANOVAs on each level of C instead of using the 3 If the within-subjects variable were chosen (i.e., C), the output would include a Multivariate Tests table instead of a Univariate Tests table, with one test for each of the two simple effects of C on B. 4 By default, the LSD method for multiple comparisons is used.If the researcher wishes to control for alpha inflation as a result of performing more tests than there are degrees of freedom for the effect, the Bonferroni or Sidak adjustment may be used.To do so, the researcher needs to type "ADJ" with either BONFERRONI or SIDAK enclosed in brackets one space after the COMPARE subcommand (e.g., ADJ(BONFERRONI)).COMPARE method (Keppel, 1991;Tabachnick & Fidell, 2007).Although COMPARE can be easily used in combination with syntax to compute simple effects, as we have demonstrated, it cannot be used to decompose higherorder interaction effects, unlike the LMATRIX and MMATRIX subcommands which will now be introduced.

A three-way interaction is found
In this next section, we will examine three examples that feature a significant three-way interaction.Each, in turn, will be decomposed using the LMATRIX or MMATRIX subcommands in GLM.The following three ANOVA designs will be analyzed in order: three-way betweensubjects, three-way mixed-design, and three-way withinsubjects.

Three-way between-subjects ANOVA
The data used for the first example can be found in subjects ANOVA is appropriate to analyze the data.After defining and running the ANOVA in "Univariate...", the researcher would see that the Tests of Between-Subjects Effects table in the output shows that the three-way interaction is significant (p < .001). Figure 5 displays a plot of the means.Following the decision tree presented in Figure 1, the next step is to test simple interaction effects.The reader may infer from the plot that the three-way interaction stems from the difference between the two levels of B at the second and third levels of A, but only at the first level of C. To confirm this impression, we will first examine the simple A × B interaction on each of the two levels of C. The procedure is similar for the two other possible sets of simple interaction effects (i.e., B × C on each of the levels of A and A × C on each of the levels of B).
As was done when the two-way interaction is found example was examined, the researcher must first paste the syntax that runs the analysis and go to the Syntax Editor.Then, the LMATRIX subcommand may be typed in after the last line of syntax (one must first erase the period, then add it at the end of the LMATRIX statement; see Figure 6).By default, the LMATRIX, or contrast coefficient matrix, used in computation of effects in GLM is equal to the estimable function for the intercept matrix.Changing the contrast  coefficient matrix using the LMATRIX subcommand allows the researcher to make customized contrasts, including simple interaction effects, second-order simple effects, and second-order simple comparisons.The LMATRIX and MMATRIX subcommands require the researchers to identify specific effects by providing weighting coefficients.Appendix A describes a general procedure for deriving the weighting coefficients required for simple interaction and second-order simple effects analyses.The general rules for creating the correct LMATRIX syntax for theses analyses that can be generalized to any three-way between-subjects design are described in Appendix B. For the upcoming examples, however, only the most relevant aspects of the particular contrasts involved in decomposing the significant three-way interactions will be discussed.
After the LMATRIX subcommand has been typed in the Syntax Editor, the researcher must define the contrast with weighting coefficients for each of the effects involved in the computation of the contrast.Figure 6 displays the syntax for the overall analysis with the LMATRIX subcommands that test the simple A × B interaction at C1 and at C2.As can be seen in the two LMATRIX subcommands, there is a brief description of each contrast on lines 9 and 14 contained in quotation marks (single quotation marks may also be used to write programmer notes to be ignored by the syntax editor).These descriptions are optional, but important to include, because they clearly identify the contrasts in the output.Below the description for the first LMATRIX subcommand on line 9 are two linearly independent contrasts with the first one defined on lines 10 and 11 and the second one on lines 12 and 13.These contrasts are separated by a semi-colon at the end of line 11, which tells SPSS that two contrasts need to be tested.In this case, two contrasts are needed to use the two degrees of freedom for the simple A × B interaction effect (see Appendix B for further details).Each contrast needs to be defined within the A × B effect as well as the higher-order A × B × C effect.
For the first contrast, the six digits following the A*B effect on line 10 represent the weighting coefficients that will be applied to the six cell means corresponding to the three levels of A crossed with the two levels of B. The reader must note that the weighting coefficients are ordered in a way that is consistent with how the GLM is defined on line 3. Specifically, the reader may see that A is presented before B after the "BY" statement where the independent variables are listed.Because the variables are presented this way, the levels of A change more slowly in the left to right order of the cells than the levels of B. In the present example, the six digits represent the coefficients for, from left to right, the A1B1, A1B2, A2B1, A2B2, A3B1, and A3B2 cells.The reader may see that all levels of the faster changing variable (B) are paired with the first level of the slower changing variable (A), before moving on to the second and third levels of A. Hence, if B was presented before A on line 3, the six digits would represent the coefficients for the A1B1, A2B1, A3B1, A1B2, A2B2, and A3B2 cells.For defining any contrast using the LMATRIX subcommand, this rule concerning the order of the cells must be respected to ensure accurate calculation of the contrast.All the cells that are not involved in the contrast have a 0 value (i.e., the A3B1 and A3B2 cells), while those that are involved have either a 1 or a -15 .After examining the weighting coefficients for the A*B effect, the reader may see that the contrast compares the effect of B on the first level of A (i.e., A1B1 -A1B2) with the effect of B on the second level of A (i.e., A2B2 -A2B1).
Next, the researcher must also define the A*B effect in the weighting coefficients for the A*B*C effect, but only at the first level of C. Like the A*B effect, the weighting coefficients need to be ordered in a way that is consistent with how the GLM is defined.Specifically, the crossing of the three levels of A, with the two levels of B, and then two levels of C, yields 12 cells in the following abbreviated order from left to right with A changing slowest and C changing fastest, A1B1C1, A1B1C2, A1B2C1, A1B2C2, A2B1C1..., A3B2C2.To fix the contrast at C1, the weighting coefficients for all cells that include C2 are assigned a 0. To finalize the set of coefficients, the cells that correspond to the previously defined A*B effect are assigned the respective weighting coefficients only for cells that include C1 (i.e., A1B1C1, A1B2C1, A2B1C1, and A2B2C1).
The second contrast defined on lines 12 and 13 compares the effect of B at the first level of A with the effect of B at the third level of A. The weighting coefficients for the A*B and A*B*C effects for this contrast change slightly from the preceding ones.The reader may notice that the change simply represents the switch from comparing the effect of B at A1 with the effect of B at A3, instead of at A2.The two linearly independent contrasts encompass the simple interaction effect A × B at C1, which we will soon see is reflected in the output when we discuss the second LMATRIX subcommand.
The second LMATRIX subcommand defined on lines 14 to 18 tests the simple interaction A × B at C2.The A*B effects in the two contrasts defined on lines 15 and 17 are identical to the ones in the first LMATRIX subcommand.However, the reader may notice that the weighting coefficients for the A*B*C effects on lines 16 and 18 have changed, simply to reflect that C has been fixed at level 2 instead of level 1.
The output corresponding to the simple A × B interaction at C1 is displayed in Figure 7.This section of the output is labeled Custom Hypothesis Tests #1, reflecting that these are the results for the first user-defined LMATRIX.As a secondary reminder, just beneath the Contrast Results (KMATRIX) table appears a note that the results in the table refer to the user-defined LMATRIX labeled "simple interaction A × B at C1".The Contrast Results table displays the contrast estimate, standard error, p-value, and 95% confidence interval for the first (L1) and second (L2) contrasts.For our purpose, these results are not of interest.
The Test Results table below, however, displays the results for a simultaneous test of both contrasts, which is the simple A × B interaction at C1.The results show that this effect is significant (p < .001).However, the Test Results table in the Custom Hypothesis Tests #2 section, which has been excluded for brevity, shows that the simple A × B interaction at C2 is not significant (p = .97).
Following the decision tree (see Figure 1), the next step is to decompose the significant simple A × B interaction at C1 using second-order simple effects analyses.There are two different avenues of approach here: Either one can test the second-order simple effects of A at each level of B and C1 or the second-order simple effects of B at each level of A and C1.In order to confirm the impression formed when examining Figure 5, the second-order simple effects of B at each level of A and C1 will be computed.The LMATRIX subcommands required to run these analyses are presented in Figure 8.
Three LMATRIX subcommands are required to test the second-order simple effects of B at each of the three levels of A and C1.Within each LMATRIX subcommand, there is only one contrast because there is only one degree of freedom for B. Let us examine the first LMATRIX on lines 35 to 39.The B effect is listed first, which is the primary comparison of interest.The weighting coefficients are set to compare the first level of B with the second level of B. The researcher may note that the B effect has also been defined in the context of the higher-order interactions involving B (i.e., the A*B, B*C, and A*B*C effects, in order).Recall that the variable listed earliest in the line of syntax defining the GLM changes slower in order of the cells than variables listed later.Hence, the order of the weighting coefficients for the A*B and the B*C effects need to respect the following order: A1B1, A1B2, A2B1, A2B2, A3B1, and A3B2 as well as B1C1, B1C2, B2C1, and B2C2, respectively.For the A*B effect, the reader may verify that the coefficients reflect a comparison of B1 with B2 at the first level of A. Similarly, for the B*C effect, the reader may verify that the coefficients reflect a comparison of B1 with B2 at the first level of C. Lastly, for the A*B*C effect, the comparison of the levels of B on A1 at C1 is represented in the weighting coefficients by the assignment of the value 1 for A1B1C1, -1 for A1B2C1, and 0 for the ten other coefficients.The next two LMATRIX subcommands define the second-order simple effects of B at A2 and C1 (see lines 40 to 44) as well as B on A3 at C1 (see lines 45 to 49) respectively, using the same procedure described above.When the syntax is run, the output includes three Custom Hypothesis Tests sections, each with a Contrast Results and Test Results table.The Test Results tables show that the first contrast, the second-order simple effect of B at A1 and C1, is not significant (p = 1.00), while the other two second-order simple effects are significant (both ps < .001).Hence, as was suspected when examining the plot in Figure 5, the three-way interaction stems from the difference between the two levels of B at the second and third levels of A, but only at the first level of C.

Three-way mixed-design ANOVA
In the second example, we show how to decompose a three-way interaction when the design has both betweenand within-subjects variables.In this case, the MMATRIX subcommand must be used in conjunction with the LMATRIX subcommand.Specifically, an MMATRIX subcommand defines the contrast in relation to the withinsubjects variable(s), while, as we have already seen, an LMATRIX subcommand defines the contrast in relation to the between-subjects variable(s).The general rules for creating the correct LMATRIX and MMATRIX for theses analyses for any three-way mixed-design are described in Appendix C. Before showing how the MMATRIX subcommand functions, let us analyze the data in case3.savusing a 2 ) mixed-design ANOVA with B and C as within-subjects variables.First, the researcher may proceed to define the repeated measures ANOVA in GLM and click the "Paste" button instead of the "OK" button in the "Repeated Measures" dialog box.Then, the syntax should be selected and executed.
In the output, the results in the Tests of Within-Subjects Effects table show that the three-way A × B × C interaction is significant (p < .001). Figure 9 presents a plot of the means.The pattern of means suggests that the three-way interaction stems from the difference between the two levels of A at the second level of B and second level of C. To verify this observation, we will work through the decision tree presented in Figure 1 and first test the simple C × A interaction at each of the levels of B. Figure 10 displays the pasted syntax with the LMATRIX and MMATRIX subcommands required to test these simple interaction effects.
The reader may first notice on lines 12 and 14 that each contrast in the MMATRIX subcommand has a label defined using quotation marks.The syntax that follows the labels on lines 13 and 15 defines the within-subjects portion of the simple interaction effects.The "all" statement tells SPSS that all combinations of the levels of the within-subjects variables at that line of syntax will be assigned weighting coefficients.Specifically, for the present example, the order of the cells from left to right is B1C1, B1C2, B2C1, and B2C2.The reader may confirm that the first contrast on line 13 defines the effect of C on B1 6 (i.e., B1C1 -B1C2).Now, because the 6 The researcher may also list the names of the combined levels of the within-subjects variables (as defined in the dependent variables portion of the GLM line of syntax) in any order with corresponding weighting coefficients.For example, after the label, write "A1B2 -1 A1B1 1" and get the same outcome.Names not listed are assigned a 0 by default.LMATRIX subcommand requests a comparison between A1 and A2, the contrast tested for the first MMATRIX subcommand is the combined comparison of A1 and A2 with C1 and C2 at B1 (i.e., the simple C × A interaction at B1).The second contrast defined in the MMATRIX subcommand on line 15 requests the effect of C on B2 (i.e., B2C1 -B2C2).Hence, combined with the LMATRIX subcommand, this line of syntax tests the simple C × A interaction at B2.The pertinent results are displayed in Figure 11.
In the Custom Hypothesis Tests #1 section, the reader may focus on the Contrast Results (K Matrix) and Univariate Test Results tables, while ignoring the Multivariate Test Results table that has been omitted from Figure 11.In the Contrast Results (K Matrix) table, we find two contrasts under the Transformed Variable heading: the first one shows that the simple C × A interaction at B1 is not significant (p = 1.00) while the second shows that the simple C × A interaction at B2 is significant (p < .001).The corresponding F-tests are presented in the Univariate Tests Results table.
Following the decision tree illustrated in Figure 1, we will proceed by testing second-order simple effects.Based on our observation from examining the plots in Figure 9, we will proceed to test the second-order simple effect of A at C1 and B2 as well as A at C2 and B2.The syntax for running these analyses is presented in Figure 12.The reader may see that there is one LMATRIX subcommand on line 35 and one MMATRIX subcommand on line 37.The LMATRIX  The output presented in Figure 13 contains a Custom Hypothesis Tests #1 section.Within the section, the reader will find a Contrasts Results (K Matrix) and Test Results table displaying the outcome for both second-order simple effects tests.Both tables show that the second-order simple effect of A at C1 and B2 is not significant (p = 1.00) while the second-order simple effect of A at C2 and B2 is significant (p < .001).Hence, the decomposition of the three-way interaction using simple effects analyses confirms our impression that the interaction stems from the difference between the two levels of A at the second level of B and second level of C.

Three-way within-subjects ANOVA
For the third example, we decompose a significant threeway interaction using MMATRIX when the design is fully within-subjects.The general rules for creating the correct MMATRIX for these analyses for any three-way withinsubjects design are described in Appendix D. The data for the present example are located in case4.sav.The appropriate design to analyze them is a ( 3 ) within-subjects ANOVA.The researcher may proceed to define the repeated measures  ANOVA in GLM, click the "Paste" button instead of the "OK" button, then select and run the syntax.
The results show that the three-way interaction is significant (p < .001). Figure 14 presents a plot of the means.The reader may infer from the plots that the three-way interaction stems from the difference between the two levels of C at the second level of B and the first level of A. Following the decision tree (see Figure 1), we should proceed with tests of simple interaction effects.Based on our impression of the nature of the three-way interaction, we will test the simple B × C interactions on each of the three levels of A.
The syntax required to run this analysis is presented in Figure 15.The reader may notice that there is a single MMATRIX subcommand with three labeled and specified contrasts on lines 10 to 15.The contrasts are defined with the weighting coefficients required to test, in order: the simple B × C interaction at the first, second, and then third level of A (lines 11, 13, and 15 respectively).The weighting coefficients have been assigned in the same manner as previously described.The results for these analyses are presented in Figure 16.In the Custom Hypothesis Tests section, the reader may find the Contrast Results (K Matrix) and Univariate Test Results tables, which contain the results for each simple interaction effect.The results show that the simple B × C interaction at A1 is significant (p < .001),while the simple B × C interactions at A2 and at A3 are not significant (p = 1.00 and p = .43,respectively).To further decompose the three-way interaction and confirm our impression, the researcher would test the second-order simple effect of C at B1 and A1 as well as C at B2 and A1.The syntax to run these analyses is presented in  Figure 17.There is one MMATRIX subcommand on line 32 with two specified contrasts on lines 33 and 35.The first contrast has weighting coefficients that request the secondorder simple effect of C at B1 and A1 and the second contrast requests the second-order simple effect of C at B2 and A1.The output shows that the second-order simple effect of C at B1 and A1 is not significant (p = .16)while the second-order simple effect of C at B2 and A1 is significant (p < .001).Thus, the three-way interaction, as we suspected from examining the plots in Figure 14, stems from the difference between the levels of C at the second level of B and first level of A.

Summary
In this tutorial, we have provided researchers who use the GLM procedure in SPSS explicit instructions for decomposing two-and three-way interactions.Specifically, we showed how to generate the proper COMPARE, LMATRIX and MMATRIX subcommands to conduct simple interaction and first-and second-order simple effects analyses for three different types of ANOVA designs.The additional instructions and syntax provided in the Appendices offer general rules for creating customized design-specific syntax.With the syntax, instructions, and illustrative examples provided, researchers who prefer to use GLM in SPSS may continue to use it for conducting ANOVAs when significant two-or three-way interactions are found.Alternatively, researchers could learn the MANOVA procedure in SPSS, which does not offer the point and click method, and write all the syntax required for analysis or use another perhaps less intuitive data analysis program.
If the reader desires to practice conducting the simple interaction and second-order simple effects analyses presented in this tutorial, the data files and corresponding syntax are available on the Tutorials for Quantitative Methods for Psychology website at http://www.tqmp.org.The reader may find the SPSS data and syntax files by choosing the content menu and then clicking on the word "sample" that follows the title of this paper.

Appendix A.
Generating the weighting coefficients necessary for a set of linearly independent contrasts is paramount to creating the correct LMATRIX and MMATRIX.This task can prove to be difficult when simple interactions and second-order simple effects have more than two degrees of freedom.Guidelines are presented here, however, that may be generalized to simple interactions and second-order simple effects with many degrees of freedom.To illustrate the procedure, a 3 3]) design will be referenced throughout this section.
The researcher may first choose one of the variables involved in the effect of interest (e.g. a simple A × B interaction effect) and identify a set of pairwise comparisons on that variable.For the present illustration, we will use A and the pairwise comparisons commonly conducted when following-up on a significant main effect in ANOVA.The following comparisons, expressed as a list of weighting coefficients, are linearly independent and they together use the two degrees of freedom for A: L1A = 1 -1 0 and L2A = 1 0 -1 with the first, second, and third digits representing the coefficients for the A1, A2, and A3 cells respectively.These pairwise comparisons are linearly independent because neither one can be expressed as a linear combination of the other one.If the last logically possible pairwise comparison (L3A = 0 1 -1) were included in the set, however, the set of three comparisons would not be linearly independent, because any one of them could be expressed as a linear combination of the other two (e.g., L3A = L2A -L1A; see p. 178 in Maxwell & Delaney, 2004).Thus, for a variable with three levels such as A, the researcher may simply choose two of the three possible pairwise comparisons and be confident that the set is linearly independent.Generally, if A has x number of levels, the researcher may choose the comparisons involving the first level of A with each of the other levels of A (e.g., when A has x = 4 levels: L1 = 1 -1 0 0, L2 = 1 0 -1 0, and L3 = 1 0 0 -1).
Second, for simple interaction effects, one needs to consider comparisons involving the levels of two variables simultaneously, not just one variable.When introducing another variable into the set of contrasts, say B, the researcher must find a set of linearly independent contrasts for that variable alone.The general rule provided above may be used.In this case, because B has three levels, we can use L1B = 1 -1 0 and L2B = 1 0 -1, the same ones used above for A.
Third, now that a set of linearly independent comparisons for both A and B have been identified, the researcher may derive the weighting coefficients for the four linearly independent contrasts for the simple interaction A × B using the following method.The researcher may draw four separate two-way cross classification tables, one for each linearly independent contrast, with as many rows as there are levels for A and as many columns as there are levels for B. The row variable in each table must be a variable that was listed before the column variable on the line of syntax that defines the GLM.For the present example, A was defined before B, so the row variable for the tables is A and the column variable is B. Figure A1 presents an example of how the tables could be constructed.
With three levels for A and three for B, each table is a 3 × 3 matrix with nine cells ordered from A1B1 in the top left cell to A3B3 in the bottom right cell.Beside the row header A are the weighting coefficients that correspond to either L1A (the top two tables) or L2A (the bottom two tables) and below the column header B are the weighting coefficients Figure A1.Weighting coefficients for a set of linearly independent contrasts for a 3 × 3 simple interaction.
that correspond to L1B (the two tables on the left) or L2B (the two tables on the right).The reader may see that the top left table is comprised of the L1A and L1B contrasts, while the other tables comprise the three other possible permutations of the two contrasts on A and the two contrasts on B. It is important that the researcher ensures that all possible permutations of the contrasts derived on the two independent variables are represented in the collection of tables.Most generally, if the researcher has an A × B simple interaction, the (a -1) linearly independent contrasts on A would each need to be paired with each of the (b -1) linearly independent contrasts on B, for a total of (a -1) × (b -1) tables.
The weighting coefficients in the tables are calculated by taking the cross product of each cell's row and column weighting coefficients.For example, in the top left table in Figure A1, the weighting coefficient for cell A1B1 is the product of the weighting coefficient that corresponds to A1 on the left and the weighting coefficient that corresponds to B1 above (i.e., 1 × 1 = 1).The four sets of weighting coefficients contained in the tables are linearly independent and can be used in conjunction with the LMATRIX subcommand to test any 3 × 3 simple interaction, including the simple interaction A × B from the illustrative example.

Appendix B.
Testing simple interaction effects in a three-way betweensubjects ANOVA using LMATRIX For any three-way between-subjects design, the number of LMATRIX subcommands required to test simple interaction effects is equal to the number of levels for the variable that is being held constant.Suppose a researcher has a 3 ) design and wishes to test the simple A × B interaction effects at each level of C. In this case, the researcher would specify three LMATRIX subcommands, one for each level of C, the variable that is being held constant.The number of contrasts that need to be defined within each LMATRIX is equivalent to the number of degrees of freedom for the simple interaction.Following our example, the researcher would need to specify four contrasts (i.e., dfAB = dfA × dfB = (a -1) × (b -1) = (3 -1) × (3 -1) = 4).Note that the contrasts do not need to be orthogonal, although they can be, but must be linearly independent (see Rodgers, Nicewander, & Toothaker, 1984 for a discussion of linear independence and orthogonality).Appendix A provides a detailed description of how to derive the weighting coefficients for a set of linearly independent contrasts.
For any three-way between-subjects design, the weighting coefficients for each linearly independent contrast will be used to define two effects.The first effect describes the simple interaction (e.g., A*B), while the second effect describes the simple interaction in the higher-order threeway interaction (e.g., A*B*C).Figure B1 presents the LMATRIX syntax required to test the simple interaction A × B at C1.The reader may note that the four contrasts presented in Figure A1 are defined using weighting coefficients, are separated by a semi-colon, and each contrast has an A*B and A*B*C effect (see lines 10 to 15 for the first contrast).The reader may also see that the weighting coefficients for the A*B effects are organized in a matrix format, which corresponds exactly to how the coefficients are presented in the tables in Figure A1.The A*B*C effects are organized similarly, except C is an additional column variable which could be presented under the B variable in Figure A1.In Figure B1, this yields the following order for the columns from left to right: B1C1, B1C2, B1C3, B2C1, ..., B2C3.The reader may verify that the first contrast corresponds to the contrast represented in the top left table in Figure A1, while the next three contrasts correspond to the top right (lines 16 to 21), bottom left (lines 22 to 27), and bottom right tables (lines 28 to 33).The LMATRIX syntax for the two other simple interaction effects (A × B at C2 and A × B at C3) have the exact same structure, except the A*B*C weighting coefficients are fixed at C2 and C3 instead of at C1.
Testing second-order simple effects in a three-way between-subjects ANOVA using LMATRIX Generally, the number of LMATRIX subcommands needed to test second-order simple effects is equal to the number of levels where the effects are tested.If the LMATRIX syntax in Figure B1 were run, the output would show that the simple interaction A × B at C1 is significant (p < .001)while the simple interactions at C2 and C3 are not (ps > .99).Hence, the researcher would want to test the secondorder simple effects of B at the different levels of A and C1 (or B at the different levels of A and C1).In this case, three LMATRIX subcommands are required, one for each of the three levels of A where the second-order simple effects are tested.The number of contrasts required within each LMATRIX is equivalent to the number of degrees of freedom for the second-order effect.Following the example, we would need two linearly independent contrasts on B, one for each degree of freedom (dfB = (b -1) = (3 -1) = 2).The two contrasts on B defined earlier in Appendix A may be used (i.e., L1B = 1 -1 0 and L2B = 1 0 -1).Once the B effect is defined in the LMATRIX subcommand, all higher-order interactions involving B must also be defined (i.e., A*B, B*C, and A*B*C).
Figure B2 displays the LMATRIX syntax for testing the second-order simple effect of B at A1 and C1.On line 68, the L1B contrast is defined and on lines 69 to 77 it is defined in the higher-order A*B, B*C, and A*B*C effects.Likewise, on line 78, the reader may see that the L2B contrast is defined and on lines 79 to 87 it is also defined in the higher-order effects.To test the other two second-order simple effects, the LMATRIX syntax from lines 67 to 87 may be copied and pasted twice in a row starting on line 88.Then some minor modifications may be made to the second and third LMATRIX subcommands, in order to fix the second-order effects at A2 and A3 respectively.First, the researcher would want to change the label in quotation marks for second and third LMATRIX subcommands on lines 88 and 109 such that it corresponds to the second-order effect at A2 and C1 and at A3 and C1 respectively.Second, to fix the second-order effect at A2, the researcher would simply need to swap the lines in the second LMATRIX that correspond to lines 69 and 70, in order to fix the contrast at A2.Likewise, for the A*B*C effect, the researcher would need to swap the lines that correspond to lines 75 and 76.Note that the B*C effect need not be changed.The corresponding alterations would need to be made to the second contrast defined on lines 78 to 87.Finally, to fix the second-order effect at A3 in the third LMATRIX, the researcher would simply move the lines of syntax described above down two lines instead of one.
The output obtained from running the syntax in Figure B2 shows that the second-order simple effect of B at A1 and C1 is significant (p < .001)while the other two simple effects are not (p > .05).Also provided in the output are the results for the two one degree of freedom linearly independent contrasts, L1B and L2B.These contrasts may be useful to the researcher, as they provide second-order simple comparisons that help explain the locus of the significant second-order simple effect.only difference between each subcommand is that the two linearly independent contrasts on A are fixed at different levels of B, with the first LMATRIX being fixed at B1 (the contrast on A is represented in the first column), the second at B2 (represented in the second column), and the third at B3 (represented in the third column).The MMATRIX subcommand on lines 34 to 36 defines the two linearly independent contrasts on the within-subject variable C. The combination of the LMATRIX and MMATRIX generates separate tests of the simple interaction A × C at B1, B2, and B3.When the syntax is run, the test results for the respective simple interaction effects are located in the Multivariate Tests Results table in the Custom Hypothesis Tests #1, #2, and #3 sections.
For second-order simple effects on a between-subjects variable, the researcher must create as many LMATRIX subcommands as there are levels of the between-subjects variable that is being held constant.For illustrative purposes, we will explore the second-order simple effect of A at the different levels of B and C1.First, the researcher must create three LMATRIX subcommands, one for each level of B. Within each LMATRIX, the researcher must generate as many linearly independent contrasts as there are degrees of freedom for the second-order simple effect (dfA = (3 -1) = 2).For each of these contrasts, the second-order simple effect must be defined on its own (i.e., A) and in higher-order order effects involving only between-subjects variables (i.e., A*B).The MMATRIX subcommand would simply fix the test at the prescribed level of the withinsubjects variable.The syntax to run these tests is identical to Figure C1, except that the MMATRIX would fix the level of C where the effect is supposed to be tested (i.e., for secondorder simple effect of A at B1 and C1, the MMATRIX would look like this "all 1 0 0.") and the labels in quotation marks should be changed to reflect their new meaning.If the syntax were run, the output would include three Custom Hypothesis Tests sections with the results of the respective simple interaction tests in the Tests Results tables.
In contrast to the preceding example, the reader may be interested in the case where the within-subjects variable is being held constant, instead of a between-subjects variable (e.g., testing the simple A × B interaction effect at each level of C).In this case, the number of MMATRIX subcommands required to test simple interaction effects is the same as the number of levels of the within-subjects variable, with one subcommand to fix the test at each level of the withinsubjects variable.Note, however, only one MMATRIX subcommand may be specified for each GLM command.If more than one is provided, only the last one listed in the syntax would be used in computations.Therefore, the researcher is required to create three separate GLM commands (a simple copy and paste works well).For the LMATRIX portion of the syntax, there needs to be one LMATRIX with as many linearly independent contrasts as there are degrees of freedom for the simple A*B interaction (i.e., dfAB = 4).The set of four linearly independent contrasts derived in Appendix A may be used (see Figure A1).The reader may find in Figure C2 the syntax used to test the simple interaction A × B at C1.In order to test the simple interaction A × B at C2 and C3, the reader would simply copy and paste the syntax in Figure C2 then change the MMATRIX to "all 0 1 0." for a test at C2 and paste again and change the MMATRIX to "all 0 0 1." for a test at C3.
For follow-up second-order simple effects tests, the researcher may modify the syntax provided in Figure C1.For instance, the level at which C is being held constant may be changed easily by altering the MMATRIX statement on lines 35 to 36.If the second-order simple effect of B at the different levels of A and C1 were of interest, the MMATRIX statement would be changed to "all 1 0 0." in order to fix C at level 1.Second, all contrasts on A (i.e., lines 8, 12, 17, 21, etc) would need to be changed to B. Third, the A*B effects (i.e., 9, 13, 18, 22, etc) would need to be changed to reflect that the contrasts on B are fixed at levels of A, instead of the contrasts on A being fixed at levels of B, as they are in Figure C1.Before making the alteration, the reader may recall that the rows represent the different levels of A and the columns represent the different levels of B. To make the change of interest for the first A*B effect on lines 9 to 11, the contrast on B (i.e., 1 -1 0) must appear at the first row of the matrix (i.e., the row representing A1) and all other values must be set to zero.It is advised that the reader refer to the matrices displayed in Figure A1, or those generated for the reader's particular circumstance, before making such alterations.are associated with A2 and A3, as they should be given that the syntax tests the simple interaction B × C at A1. Looking at the first contrast on lines 18 to 20, the reader may note that the weighting coefficients for the A1 row (i.e., line 18) correspond to the contrast defined in the top left table in Figure A1.It is also the case that the second, third, and fourth contrasts correspond to the weighting coefficients in the bottom left, top right, and bottom right tables respectively in Figure A1.For testing the simple interaction B × C at A2, the researcher may swap the weighting coefficients on lines 18, 21, 24, and 27 with those from one line below (i.e., lines that correspond to A2), in order to fix the contrasts at A2.Likewise, to test the simple interaction B × C at A3, the researcher may swap the coefficients from two lines below (i.e., lines that correspond to A3).When the syntax is run, the output contains a Custom Hypothesis Tests section and the results for the simple interaction effects test are in the Multivariate Test Results table.
Testing second-order simple effects in a three-way within-subjects ANOVA using MMATRIX The number of MMATRIX subcommands required to test second-order simple effects is equivalent to the number of levels where the effects are being tested.Suppose that a researcher wishes to follow-up on a significant simple interaction B × C at A1 with a set of simple effects tests of C at the different levels of B and A1.Here, the researcher would need three separate MMATRIX subcommands, with each one defined in a different GLM.As seen previously, the number of linearly independent contrasts needed within each MMATRIX is equal to the number of degrees of freedom for the second-order simple effect.With two degrees of freedom for second-order simple effect of C, the researcher requires two linearly independent contrasts.
Figure D2 displays the MMATRIX syntax for testing the second-order simple effect of C at B1 and A1.It consists of two linearly independent contrasts with weighting coefficients laid out as described in the previous section.The first contrast on line 90 to 92 compares B1C1 with B1C2 at A1 while the second on line 93 to 95 compares B1C1 with B1C3 at A1. Together, these contrasts comprise the second-order simple effect of C at B1 and A1.To test the second-order effect of C at B2 and A1, the researcher can simply shift the 1 and -1 for both contrasts to the right three digits.Likewise, for the second-order simple effect of C at B3 and A1, the researcher can shift the 1 and -1 to the right six digits.In the SPSS output, there are three sets of results, one for each GLM.Within each set, a Custom Hypothesis Tests section that contains a Contrast Results and a Multivariate Test Results table can be found.In the Multivariate Test Results table, the researcher can find the second-order simple effect test results.In the Contrast Results table, the researcher can find the results for the two contrasts defined in the MMATRIX subcommand.These are actually the second-order simple comparisons that can be examined following a significant secondorder simple effect test.

Figure 1 .
Figure 1.Decision Tree for conducting post hoc analyses following a two-or three-way ANOVA.

Figure 2 .
Figure2.Two-way interaction between one within-and one between-subjects variable.

Figure 4 .
Figure 4. Univariate Tests table displaying the simple effects of B at each level of C.

Figure 3 .
Figure 3. Syntax Editor with Compare added to run simple effects tests of B on each level of C.

Figure 6 .
Figure 6.LMATRIX syntax for conducting simple interaction effects on between-subjects variables.

Figure 7 .
Figure 7. Tests results for the simple A × B interaction at C1.

Figure 8 .
Figure 8. LMATRIX syntax for conducting second-order simple effects on between-subjects variables.

Figure 9 .
Figure 9. Three-way interaction among one between-and two within-subjects variables.

Figure 10 .
Figure 10.LMATRIX and MMATRIX syntax for conducting simple interaction effects on a combination of between-and within-subjects variables.

Figure 11 .
Figure 11.Tests results for the simple C × A interaction on each of the levels of B.

Figure 12 .
Figure 12.LMATRIX and MMATRIX syntax for conducting second-order simple effects of a betweensubjects variable on within-subjects variables.

Figure 13 .
Figure13.Test results for second-order simple effects of a between-subjects variable on within-subjects variables.

Figure 14 .
Figure 14.Three-way interaction among three within-subjects variables.

Figure 15 .
Figure 15.MMATRIX syntax for conducting simple interaction effects on within-subjects variables.

Figure 16 .
Figure 16.Tests results for the simple B × C interaction on each of the three levels of A.

Figure B2 .
Figure B2.LMATRIX syntax for testing the second-order simple effect of B at A1 and C1.

Figure D2 .
FigureD2.MMATRIX for testing the second-order simple effect of C at B1 and A1when the design is fully within-subjects.