Fractional Factorial Split-Plot Design

/****************************************************************/
/*          S A S   S A M P L E   L I B R A R Y                 */
/*                                                              */
/*    NAME: FACTEX18                                            */
/*   TITLE: Fractional Factorial Split-Plot Design              */
/* PRODUCT: QC                                                  */
/*  SYSTEM: ALL                                                 */
/*    KEYS: Design of Experiments, Factorial Designs,           */
/*   PROCS: FACTEX GLM                                          */
/*    DATA:                                                     */
/*                                                              */
/*     REF: SAS/QC Software:  Usage and Reference, Version 6,   */
/*          First Edition, Volume 1 and Volume 2                */
/*                                                              */
/*    MISC:                                                     */
/*                                                              */
/****************************************************************/

proc factex;
   factors W1 W2 W3
           S1 S2 S3;
   size design=16;
   blocks units=(Wire=8);
   model r=4;
   uniteffect Wire / whole=(W1 W2 W3)
                     sub  =(S1 S2 S3);
   examine aliasing(units);
   output out=WireExperiment1;
run;

proc sort data=WireExperiment1;
   by Wire W1-W3 S1-S3;
run;
proc print data=WireExperiment1;
run;

proc factex;
   factors W1 W2 W3
           S1 S2 S3;
   size design=16;
   blocks units=(Wire=8);
   model r=4;
   uniteffect Wire / whole=(W1 W2 W3)
                     sub  =(S1 S2 S3);
   examine confounding;
run;

proc factex;
   factors W1 W2 W3
           S1 S2 S3;
   size design=64;
   blocks units=(Wire=8 Sheath=4);
   model r=3;
   uniteffect Wire   / whole=(W1 W2 W3);
   uniteffect Sheath / whole=(S1 S2 S3);
   examine aliasing(units);
   output out=WireExperiment2;
proc freq data=WireExperiment2;
   table Wire  *W1*W2*W3 / list nocum nopct;
   table Sheath*S1*S2*S3 / list nocum nopct;
run;