[See FACTEX13 in the SAS/QC Sample Library]Orthogonal factorial designs are most commonly used at the initial stages of experimentation. At these stages, it is best to experiment with as few levels of each factor as possible in order to minimize the number of runs required. Thus, these designs usually involve only two levels of each factor. Occasionally some factors naturally have more than two levels of interest—different types of seed, for instance.
You can create designs for factors with different numbers of levels simply by taking the crossproduct of component designs in which the factors all have the same numbers of levels—that is, replicating every run of one design for each run of the other. (See Example 7.14.) All estimable effects in each of the component designs, in addition to all generalized interactions between estimable effects in different component designs, are estimable in the crossproduct; refer to Section 3 of Chakravarti (1956).
This example illustrates how you can construct a mixed-level design by using the OUTPUT statement with the POINTREP= option or the DESIGNREP= option to take the crossproduct between two designs.
Suppose you want to construct a mixed-level factorial design for two 2-level factors (A and B) and one 3-level factor (C) with 12 runs. The following SAS statements produce a complete factorial design by using design replication:
proc factex; factors A B; output out=ab; run; factors C / nlev=3; output out=DesignReplicated designrep=ab; run; proc print data=DesignReplicated; run;
Output 7.7.1 lists the mixed-level design saved in the data set DesignReplicated.
Obs | A | B | C |
---|---|---|---|
1 | -1 | -1 | -1 |
2 | -1 | -1 | 0 |
3 | -1 | -1 | 1 |
4 | -1 | 1 | -1 |
5 | -1 | 1 | 0 |
6 | -1 | 1 | 1 |
7 | 1 | -1 | -1 |
8 | 1 | -1 | 0 |
9 | 1 | -1 | 1 |
10 | 1 | 1 | -1 |
11 | 1 | 1 | 0 |
12 | 1 | 1 | 1 |
You can also create a mixed-level design for the preceding factors by using the point replication feature of the FACTEX procedure. The following SAS statements produce a complete factorial design by using point replication:
proc factex; factors A B; output out=ab; run; factors C / nlev=3; output out=PointReplicated pointrep=ab; run; proc print data=PointReplicated; run;
Output 7.7.2 lists the mixed-level design saved in the data set PointReplicated.
Obs | C | A | B |
---|---|---|---|
1 | -1 | -1 | -1 |
2 | -1 | -1 | 1 |
3 | -1 | 1 | -1 |
4 | -1 | 1 | 1 |
5 | 0 | -1 | -1 |
6 | 0 | -1 | 1 |
7 | 0 | 1 | -1 |
8 | 0 | 1 | 1 |
9 | 1 | -1 | -1 |
10 | 1 | -1 | 1 |
11 | 1 | 1 | -1 |
12 | 1 | 1 | 1 |
Note the difference between the designs in Output 7.7.1 and Output 7.7.2. In design replication, the mixed-level design is given by AB C, while for point replication the mixed-level design is given by C AB, where denotes the direct product. In design replication, you can view the DESIGNREP= data set as nested outside the design, while in point replication, you can view the POINTREP= data set as nested inside the design.