GVARCLUS Procedure

Example 17.2 Output a Covariance Matrix to a SAS Data File

This example shows how to output a covariance matrix to a SAS data file. The OUTCP= option creates an output data table named mylib.cov.

The following DATA step generates a data table that has 2,000 observations and contains both interval variables (x1–x2) and nominal variables (a, c1, and c2):

data mylib.data1;
    array x{2};
    array c{2};
    do i=1 to 2000;
        a=int(rand('UNIFORM')*2);
        do j=1 to 2;
            x{j}=rand('UNIFORM');
            c{j}=int(rand('UNIFORM')*2);
       end;
       output;
    end;
run;

The following statements invoke the GVARCLUS procedure:

 title  "Output of Covariance Matrix";

 proc gvarclus data=mylib.data1 maxiter=4 outcp=mylib.cov;
     input c1 c2 /level=nominal;
     input x1 x2 /level=interval;
 run;

 proc print data=mylib.cov;
 run;

Output 17.2.1 shows the content of the data file that PROC GVARCLUS generates.

Output 17.2.1: Output of Covariance Matrix

Output of Covariance Matrix

Obs_ID__TYPE__VAR__vID_v1v2v3v4v5v6
11MEAN/FREQ  0.490.501018.00982.00993.001007.00
22N  2000.002000.002000.002000.002000.002000.00
33COVx1v1163.512.822.02-2.02-10.3510.35
44COVx2v22.82163.963.15-3.15-1.051.05
55COVc1 0v32.023.15499.84-499.84-1.441.44
66COVc1 1v4-2.02-3.15-499.84499.841.44-1.44
77COVc2 0v5-10.35-1.05-1.441.44499.98-499.98
88COVc2 1v610.351.051.44-1.44-499.98499.98


The _VAR_ column displays the names of all variables and the levels of the nominal variables. Assuming that you have n effects (the total number of interval variables and the levels of categorical variables), the _vID_ column contains n markers, v1 to vn, where vi denotes the ith effect. The column _TYPE_ defines the role of each row. When the _TYPE_ column displays MEAN/FREQ, the corresponding row contains either the mean for an interval variable or the frequency for a level of a nominal variable. When the _TYPE_ column displays N, the corresponding row contains the number of samples. And when the _TYPE_ column displays COV, the corresponding row contains a row of the covariance matrix. In this example, the covariance matrix is , and it resides in the table in rows 3–6 and columns 7–10.

Last updated: September 23, 2026