data a (type = corr); input _type_ $ _name_ $ gaelic english history math algebra geometry; cards; mean . 0 0 0 0 0 0 std . 1 1 1 1 1 1 n . 220 220 220 220 220 220 corr gaelic 1 .44 .41 .29 .33 .25 corr english .44 1 .35 .35 .32 .33 corr history .41 .35 1 .16 .19 .18 corr math .29 .35 .16 1 .59 .47 corr algebra .33 .32 .19 .59 1 .46 corr geometry .25 .33 .18 .47 .46 1 ; run; proc contents data = a; run; proc factor data = a rotate = promax scree; var gaelic english history math algebra geometry; run; proc factor data = a method = ml scree n=2 se rotate = promax; var gaelic english history math algebra geometry; run;