Chapter Contents |
Previous |
Next |
The MIXED Procedure |
Recall that a mixed model is of the form
PROC MIXED constructs a mixed model according to the specifications in the MODEL, RANDOM, and REPEATED statements. Each effect in the MODEL statement generates one or more columns in the model matrix X, and each effect in the RANDOM statement generates one or more columns in the model matrix Z. Effects in the REPEATED statement do not generate model matrices; they serve only to index observations within subjects. This section shows precisely how PROC MIXED builds X and Z.
By contrast, the intercept is not included by default in Z. To obtain a column of 1s in Z, you must specify in the RANDOM statement either the INTERCEPT effect or some effect that has only one level.
Data | I | A | B | ||||
A | B | A1 | A2 | B1 | B2 | B3 | |
1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 |
1 | 2 | 1 | 1 | 0 | 0 | 1 | 0 |
1 | 3 | 1 | 1 | 0 | 0 | 0 | 1 |
2 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
2 | 2 | 1 | 0 | 1 | 0 | 1 | 0 |
2 | 3 | 1 | 0 | 1 | 0 | 0 | 1 |
Typically, there are more columns for these effects than there are degrees of freedom for them. In other words, PROC MIXED uses an over-parameterized model.
Data | I | A | B | A*B | |||||||||
A | B | A1 | A2 | B1 | B2 | B3 | A1B1 | A1B2 | A1B3 | A2B1 | A2B2 | A2B3 | |
1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
1 | 2 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
1 | 3 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 |
2 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
2 | 2 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
2 | 3 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
In the preceding matrix, main-effects columns are not linearly independent of crossed-effect columns; in fact, the column space for the crossed effects contains the space of the main effect.
When your model contains many interaction effects, you may be able to code them more parsimoniously using the bar operator ( | ). The bar operator generates all possible interaction effects. For example, A|B|C expands to A B A*B C A*C B*C A*B*C. To eliminate higher-order interaction effects, use the at sign ( @ ) in conjunction with the bar operator. For instance, A|B|C|D@2 expands to A B A*B C A*C B*C D A*D B*D C*D.
model Y=A B(A); model Y=A A*B;
The nesting operator in PROC MIXED is more a notational convenience than an operation distinct from crossing. Nested effects are typically characterized by the property that the nested variables never appear as main effects. The order of the variables within nesting parentheses is made to correspond to the order of these variables in the CLASS statement. The order of the columns is such that variables outside the parentheses index faster than those inside the parentheses, and the rightmost nested variables index faster than the leftmost variables.
Data | I | A | B(A) | |||||||
A | B | A1 | A2 | B1A1 | B2A1 | B3A1 | B1A2 | B2A2 | B3A2 | |
1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
1 | 2 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
1 | 3 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
2 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 |
2 | 2 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
2 | 3 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
Note that nested effects are often distinguished from interaction effects by the implied randomization structure of the design. That is, they usually indicate random effects within a fixed-effects framework. The fact that random effects can be modeled directly in the RANDOM statement may make the specification of nested effects in the MODEL statement unnecessary.
Data | I | A | X(A) | |||
X | A | A1 | A2 | X(A1) | X(A2) | |
21 | 1 | 1 | 1 | 0 | 21 | 0 |
24 | 1 | 1 | 1 | 0 | 24 | 0 |
22 | 1 | 1 | 1 | 0 | 22 | 0 |
28 | 2 | 1 | 0 | 1 | 0 | 28 |
19 | 2 | 1 | 0 | 1 | 0 | 19 |
23 | 2 | 1 | 0 | 1 | 0 | 23 |
This model estimates a separate slope for X within each level of A.
Data | I | X | A | X*A | |||
X | A | X | A1 | A2 | X*A1 | X*A2 | |
21 | 1 | 1 | 21 | 1 | 0 | 21 | 0 |
24 | 1 | 1 | 24 | 1 | 0 | 24 | 0 |
22 | 1 | 1 | 22 | 1 | 0 | 22 | 0 |
28 | 2 | 1 | 28 | 0 | 1 | 0 | 28 |
19 | 2 | 1 | 19 | 0 | 1 | 0 | 19 |
23 | 2 | 1 | 23 | 0 | 1 | 0 | 23 |
You can use continuous-by-class effects to test for homogeneity of slopes.
Effects may be renamed by PROC MIXED to correspond to ordering rules. For example, B*A(E D) may be renamed A*B(D E) to satisfy the following:
The sequencing of the parameters generated by an effect can be described by which variables have their levels indexed faster:
For example, suppose a model includes four effects - A, B, C, and D -each having two levels, 1 and 2. If the CLASS statement is
class A B C D;
then the order of the parameters for the effect B*A(C D), which is renamed A*B(C D), is
Note that first the crossed effects B and A are sorted in the order in which they appear in the CLASS statement so that A precedes B in the parameter list. Then, for each combination of the nested effects in turn, combinations of A and B appear. The B effect moves fastest because it is rightmost in the cross list. Then A moves next fastest, and D moves next fastest. The C effect is the slowest since it is leftmost in the nested list.
When numeric levels are used, levels are sorted by their character format, which may not correspond to their numeric sort sequence (for example, noninteger levels). Therefore, it is advisable to include a desired format for numeric levels or to use the ORDER=INTERNAL option in the PROC MIXED statement to ensure that levels are sorted by their internal values.
Some procedures (such as the CATMOD procedure) reparameterize models to full rank using restrictions on the parameters. PROC GLM and PROC MIXED do not reparameterize, making the hypotheses that are commonly tested more understandable. Refer to Goodnight (1978) for additional reasons for not reparameterizing.
Chapter Contents |
Previous |
Next |
Top |
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.