Output from imlsscp.sas

Source
0 Graphs

NOTE: Capture of log output started.
NOTE: %INCLUDE (level 1) file n:\psy6140\examples\iml\imlsscp.sas is file
      n:\psy6140\examples\iml\imlsscp.sas.
1277  +title 'IMLSSCP: Computing Cross-product Summary Matrices';
1278  +    *  -------  -----------------------------------------;
1279  +proc iml;
IML Ready
1280  +   reset print log fuzz fw=4;
1281  +*[GREEN AND CARROLL, TABLE 2.3];
1282  +Y ={1 0 1 4 3 2 5 6  9 13 15 16};
                Y             1 row      12 cols    (numeric)

            1    0    1    4    3    2    5    6    9   13   15   16

1283  +X1={1 2 2 3 5 5 6 7 10 11 11 12};
                X1            1 row      12 cols    (numeric)

            1    2    2    3    5    5    6    7   10   11   11   12

1284  +X2={1 1 2 2 4 6 5 4  8  7  9 10};
                X2            1 row      12 cols    (numeric)

            1    1    2    2    4    6    5    4    8    7    9   10

1285  +*-- Shape variables into a matrix;
1286  +A = t(Y)|| t(X1) || t(X2);
                A            12 rows      3 cols    (numeric)

                                   1    1    1
                                   0    2    1
                                   1    2    2
                                   4    3    2
                                   3    5    4
                                   2    5    6
                                   5    6    5
                                   6    7    4
                                   9   10    8
                                  13   11    7
                                  15   11    9
                                  16   12   10

1287  +reset fw=6;
1288  +*-- 1. Raw cross-product matrix, X'X ;
1289  +XPX = t(A) * A;
                XPX           3 rows      3 cols    (numeric)

                                823    702    542
                                702    639    497
                                542    497    397

1290  +*-- 2. (mean-corrected) SSCP matrix;
1291  +MEAN = A[:,];
                MEAN          1 row       3 cols    (numeric)

                               6.25   6.25 4.9167

1292  +n = nrow(A);
                N             1 row       1 col     (numeric)

                                        12

1293  +p = ncol(A);
                P             1 row       1 col     (numeric)

                                         3

1294  +   * subtract col means and take crossproducts;
1295  +D = A - shape(MEAN, n, p);
                D            12 rows      3 cols    (numeric)

                              -5.25  -5.25 -3.917
                              -6.25  -4.25 -3.917
                              -5.25  -4.25 -2.917
                              -2.25  -3.25 -2.917
                              -3.25  -1.25 -0.917
                              -4.25  -1.25 1.0833
                              -1.25  -0.25 0.0833
                              -0.25   0.75 -0.917
                               2.75   3.75 3.0833
                               6.75   4.75 2.0833
                               8.75   4.75 4.0833
                               9.75   5.75 5.0833

1296  +XPX = t(D) * D;
                XPX           3 rows      3 cols    (numeric)

                             354.25 233.25 173.25
                             233.25 170.25 128.25
                             173.25 128.25 106.92

1297  +*-- 3. variance - covariance matrix;
1298  +COV = XPX / (n-1);
                COV           3 rows      3 cols    (numeric)

                             32.205 21.205  15.75
                             21.205 15.477 11.659
                              15.75 11.659 9.7197

1299  +*-- 4. correlation matrix;
1300  +  * Extract standard deviations, divide left and right;
1301  +STD = diag(COV)##.5;
                STD           3 rows      3 cols    (numeric)

                             5.6749      0      0
                                  0 3.9341      0
                                  0      0 3.1176

1302  +CORR = inv(STD) * COV * inv(STD);
                CORR          3 rows      3 cols    (numeric)

                                  1 0.9498 0.8902
                             0.9498      1 0.9506
                             0.8902 0.9506      1

1303  +*-- 5. labels for result;
1304  +label = {Y X1 X2};
           LABEL         1 row       3 cols    (character, size 2)

                                   Y  X1 X2

1305  +print COV[r=label c=label] CORR[r=label c=label];
              COV      Y     X1     X2 CORR      Y     X1     X2

              Y   32.205 21.205  15.75 Y         1 0.9498 0.8902
              X1  21.205 15.477 11.659 X1   0.9498      1 0.9506
              X2   15.75 11.659 9.7197 X2   0.8902 0.9506      1
1306  +quit;
Exiting IML.
NOTE: The PROCEDURE IML used 0.16 seconds.

1307  +
NOTE: %INCLUDE (level 1) ending.