Analysis in AMOS
(with pairwise tests of path coefficients)
Draft last revised Sunday, January
*** These notes are still in "Draft" stage ***
Synopsis: The following notes
contain procedures on how to do a multi-group analysis in AMOS, and how
to instruct AMOS to test for pairwise path coefficient differences.
Please note that what follows is just an example of how this can be
done, and since we're using such a small sample size, p-values are not
computed for the chi-squared test. In practice, you would be using a
much larger sample size, and would have more degrees of freedom. What
follows is only for demonstration purposes.
Mediation Model Across a
If we consider the classic 3-variable
mediation model (Baron & Kenny, 1986), there are times when we may
be interested in knowing
whether the mediation model holds across levels of a moderator, where
the levels of the moderator represents distinct, mutually exclusive
and independent groups. Consider the following example in which we have
model across 5 levels of a moderator:
Y - dependent variable
X - independent variable
M - mediator
Z - moderator (categorical, 5 levels)
The questions that arise from the above include the following:
1. Is path "a" for Z = 1 statistically different from path "a" for Z =
2? Is path "a" for Z = 1 statistically different from path "a" for Z =
3? Etc., for other pairwise comparisons of paths "a" across levels of Z.
2. Is path "b" for Z = 1 statistically different from path "b" for Z =
2? Is path "b" for Z = 1 statistically different from path "b" for Z =
3? Etc., for other pairwise comparisons of paths "b" across levels of Z.
3. Is path "c" for Z = 1 statistically different from path "c" for Z =
2? Is path "c" for Z = 1 statistically different from path "c" for Z =
3? Etc., for other pairwise comparisons of paths "c" across levels of Z.
Using a Categorical Moderator with Two Groups
In the following example, we consider the case of only two groups,
though the example can be generalized to situations in which you have
more than 2 groups, such as in the example given above in the
introduction to these notes.
Consider the situation in which you are
interested in knowing whether a path model is consistent across 2
groups. In this example, we consider a basic 3-variable
mediational model, then ask the question of whether the model is
consistent across 2 groups. The 2 groups are actual levels of a
"moderator," so what we are actually testing is related to what is
generally called moderated
mediation. That is, we are comparing the mediational model
levels of Z, and wanting to conclude whether the mediation is moderated
by levels of Z, and if so, which paths in the 3-variable model are
different from which others.
For the 3-variable path models noted above, the test of the equality of
"a" parameters is a test of mediated moderation (which we
do not discuss further in these notes). The test
of the equality of the "b" parameter is a test of moderated mediation
(Baron & Kenny, 1986; MacKinnon, 2008), and is the technique we do
discuss in these notes.
Let's draw up some fictional data in SPSS to perform these analyses.
Note that we will be using an extremely small sample size, and that
usually, you would want a much larger sample size to conduct path
analysis or SEM analysis more generally.
As previously done, but this time having a moderator with only 2
levels, we define the following:
Y - dependent variable
X - independent variable
M - mediator
Z - moderator (categorical, 2
Here's what our fictional data look like when entered into SPSS:
Notice that we have 20 cases in total, Y, X, and M are all continuous
variables, and Z (our moderator) is dichotomously scored. What we want
to test is whether the mediation model of "X predicts Z through M" is
consistant across our two levels of Z. We also want to do pairwise
comparisons of paths across the two groups, to be able to pinpoint path
Procedures in AMOS
Start up AMOS Graphics, and
draw the simplest mediation model:
We now tell AMOS that the above will represent a path diagram for two
distinct groups (recall that we're using two groups in our example, you
may have more in your data). To do this, click on "Analyze," then
Notice by default AMOS identifies the first group as "Group 1." You can
keep this name for group 1, or you can select a different name. For
instance, suppose your first group represents "Bullies" and the second
group represents "Victims."
You would enter "Bullies"
for group 1, and
"Victims" for group 2. For
now, we'll just call our two groups "Group
1" and "Group 2."
So, we leave the text above as is, and select "New"
to enter our second group as follows:
Once you're done entering your groups, you can close the "Manage
Groups" window. When you return to the main AMOS window, your
will appear on the interface (double-check to make sure they are
Next, tell AMOS which data file to use. Since for this example we saved
our SPSS data
file as "group_data," we'll
tell AMOS to fetch this file for use with
the present analysis. We will have to instruct it to use the file for
BOTH groups, since we stored the data in one data file. There are times
in which you may have two data files (each file containing a different
group of objects), which would call for slightly
different procedures. For now, however, we only have the one data file.
Click under "File" then
"Data Files" to open the
data file window:
The above requires some explanation. To obtain the above, we first
selected "Group 1" then
clicked on "File Name" and
selected the SPSS
data file (it's the only data file we're using, we don't have separate
data files for each group). Once the file for group 1 is selected,
click on "Grouping Variable,"
and it will bring up the following
Since our grouping variable is variable Z, we select "Z" and then
"Ok." Next, click on "Group Value" from the "Data Files" window. It
will bring up the following
The function of the above screen is simply to verify that your groups
the above screen to make sure all is in order. In our SPSS data file,
we coded group 1 as "0" and
group 2 as "1" so all looks
good above. We
see as well that there are 10 observations per group (Freq = 10, 10).
Next, select "Group 2" from
the main window. Repeat
the above steps and select the same data file as for Group 1
(since recall, all of our data is in one file). Your final "Data Files"
window, if you've done everything correctly, should look as follows:
Notice that we have identified two groups above, with both "Group 1"
and "Group 2" taking its
data from "group_data.sav."
the grouping variable to be "Z",
and the value of each group is "0"
"1". The total N per group
is 10 out of 20 objects. Click "Ok"
we're ready to move on.
Naming Paths in
the Mediational Model
We now have to name the paths "a" "b" and
for each group. First however, we need to complete our model by adding
residual terms to "M" and "Y" (we name them "r1" and "r2" below):
Recall why we're adding the residual
terms above. Both "M" and "Y" are endogenous variables,
they are being predicted by other variables in the model. "X" doesn't
have a residual term because it isn't being predicted by anything. The
drawing of the model is now complete.
The next steps are very crucial to making sure
we're able to obtain the pairwise comparisons of coefficients. In the
AMOS tab that displays the groups,
choose "Group 2" and then
right-click on the path from X to M in the path diagram. Select "Object
"Parameters." Under "Regression Weight," call the
path by the name of
a2 (to identify this path as the path "a" for group 2 and DESELECT
"All groups." Notice in the
following that "Regression weight"
identified as "a2" and
we've deselected "All groups":
When you close this window, the path "a2" should appear in the path
diagram (as it does in the following):
Repeat the above process for paths "b"
(from M to Y) and "c" (from
Y), being sure to "deselect"
the "All groups" box for
all paths, so
that you obtain the following picture:
Model 2 (i.e., "Model 2" is
"Group 2's" model) is now
ready. To prepare
Model 1, select "Group 1"
and do the
same as was done for Model 2, but this time, identify all the paths as
simply "a" "b" "c". As was done for Model 2,
deselect "All groups" for
each path. You should have a path diagram for Model 1 that looks like
The Two Models
Let's take a moment to review what we've
done so far. If everything was done correctly, you
should now have two models drawn in AMOS that you are going to run.
They won't both be on the same screen, but rather they will be selected
by choosing "Group 1" or "Group 2" from the AMOS
interface. They should
like this - Model 1 is on the left, and Model 2 is on the right:
Tell AMOS to do Pairwise Comparisons of Coefficients
that what we would like to do is, in addition to comparing the fit of
the two models, compare coefficients a1 to a2, b1 to b2, c1 to
c2, etc. These pairwise
comparisons (among others) will be produced when we run the analysis. To
instruct AMOS to compare all paths within and between the two models,
select "View" then "Analysis Properties." The
window will appear:
Select "Output" in the top
Be sure "Critical ratios for
differences" is selected. Then, close the window, and the
analysis is ready to run. To run the analysis,
click on "Analyze" then "Calculate Estimates":
The models will then run.
the Output - Pairwise
Comparisons Between Path Coefficients
We won't interpret all of the AMOS output here. Rather, we focus on
differences between the two models. Let's first obtain a visual of each
Model 1 (Group 1):
Model 2 (Group 2):
The above are the respective path coefficients for each model. Now, to
see whether path "a1" differs from path "a2," we select "Pairwise
Parameter Comparisons" from the text output, and notice that it
provides a matrix on the right side:
Notice that we've highlighted the part of the matrix that is of most
interest to us for the pairwise comparisons we wish to make. The rest
the matrix (and there is more if you scroll to the extreme right of the
matrix), are comparisons between other parameters in the model,
variances, covariances, etc. For the purposes of these notes however,
we're only interested in the comparison of path coefficients across
Let's look more closely at what the value for the b1/a1 cell
represents. It is
equal to -1.103. It is a z-test for the difference between coefficients
from Model 1 to Model 2, and for a two-tailed test, we want this value
to be greater than |1.96| (absolute value of 1.96) for the difference
between paths to be statistically significant at p < .05. Notice
that the value of -1.103 does not exceed |1.96| and hence the values of
.46 and .03 are not statistically significantly different from one
another in model 1. Note however that the difference between these two
paths really wasn't of interest to us. We're more interested in making
cross-group comparisons. Let's look at one of those now.
Look at the z-value for the cell a2/a1. It is equal to -2.365, and
exceeds the critical value of |1.96|. Hence, we can say that the path
.46 in Model 1 is statistically significantly different from the path
in Model 2 of -.54. In other words, we have evidence to suggest that
the paths are not equal across the two models.
We can observe all pairwise comparisons across models in the table, and
conclude for which paths we have evidence to suggest a difference in
the estimated population parameters.
1. How can I compare
fit across groups? Can I compute a chi-squared difference test?
A chi-squared difference test is computed by
subtracting one chi-squared value for one model from a second
value for the second model. The difference between chi-squared values
is then evaluated on DF1 - DF2 degrees of freedom. For the above
mediational model across groups, we cannot compute a chi-squared
difference test because the DF will be the same for each group,
providing a chi-squared value on zero degrees of freedom. AIC, BIC, and
other fit measures may be used instead to compare models. There is a
literature on comparing non-nested models, though that is not discussed
here (at least not yet).
2. How can I obtain the direct effects,
indirect effects, and total effects from AMOS?
To obtain these various effects, select "View" then "Analysis
Properties," then click on the box "Indirect, direct & total
effects." You can then find these produced in the text output,
default for "Group 1":
Let's review how the various effects were computed; we start with the
direct effects. These are simply the estimated coefficients in the path
diagram for Group 1. The indirect effects comprise of the product of
paths between variables so long as the end variable is endogenous. The
reason why we see ".000" under the "M - X" cell is because there is no
indirect path of X predicting M. Had Y been a predictor of X, then we
would have an indirect path, and it would be the product of paths from
Y to X, and X to M. Similarly for Y-M, there is no indirect path. For
Y-X, we do have an indirect path, and it is (.46)(.03) = 0.0138 (round
The total effects comprise of the sum of direct and indirect effects,
and hence are simple to compute. We simply add up the relevant
quantities in the direct effects and indirect effects matrices. Notice
that the value of -.411 was computed by (-.425) + (.014) =
3. How can I test whether indirect
effects are statistically significantly different across models?
It may be
of interest to test whether the indirect effect a1*b1 is
different from the indirect effect a2*b2.
This would be equivalent to
testing whether the mediation for model 1 is statistically
significantly different from the mediation for model 2. In other words,
this would address whether the mediation is moderated. For this, we
need to consider something mentioned earlier in these notes. Recall, we
the 3-variable path models noted above, the test of the equality of
"a" parameters is a test of mediated moderation. The test
of the equality of the "b" parameter is a test of moderated mediation
(Baron & Kenny, 1986; MacKinnon, 2008).
Hence, the above tells us that if we want to
test the mediational hypothesis across groups, to look at the b1 vs. b2
coefficients. This is the test of moderated
mediation. If the pairwise
comparison of b1 to b2 is statistically significant, then we have
evidence to suggest that the hypothesized mediation model is moderated
by the given moderator. If you have more than 2 levels on the
moderator, you would have to look at various pairwise path comparisons
to see just "where" the moderation is taking place. Remember however
that all of this presuposes that you've established mediation
independently in each model. How to do this using AMOS? We review this
in the next question.
4. How do
test for evidence of mediation in each path model above?
Before performing pairwise
comparisons between paths in your models, you'll probably first be
interested to know whether the mediation hypothesis holds in each model
by itself. The test of b1 vs. b2, even if statistically significant,
does not necessarily mean that mediation holds independently for each
model (this statement still needs to be verified). A statistically
significant difference between b1 and b2 simply
suggests that the hypothesized mediational model (possibly yet to be
confirmed) is different across levels of the moderator. To obtain
evidence for mediation on each model, we have to start with each one
Testing mediation in AMOS is relatively straightforward, and can be
accomplished in more than one way. Let's consider the mediation model
for group 1. We will use the bootstrap to test, and then later see how
it agrees with our analysis in SPSS. Consider again the
classic mediation model:
In AMOS, under "Analysis Properties,"
we will select "Indirect, direct & total effects" and "Standardized estimates" under
Notice that we are asking AMOS
for the indirect effects (red arrow). This will inform us of whether
the path a*b is
statistically significant. If it is, then we have
evidence for mediation. If it isn't, then we have no evidence to
suggest that the path X to Y is mediated by M.
Setting up the
Let's now set up the bootstrap. Select "Bootstrap" from the top tab:
We will ask AMOS to produce 3000
bootstrap samples, and we'll also request 95% bias-corrected confidence
intervals. The confidence interval will also provide us with the test
of significance (i.e., p-value) for the indirect effect. The arrows in
what follows points to what we're needing to enter: