从文件中计算SAS中的协方差矩阵,而不是在编辑器中手动写入数据

时间:2019-05-22 16:52:16

标签: sas

可以从一组样本数据中计算协方差和相关矩阵。

例如,我已经在Sasuser.Live中存储了一组数据。 我想找到协方差矩阵或相关矩阵。 我知道我可以在编辑器中写数据(这很繁琐),然后使用proc cov。

或者我可以做这样的事情来使用已经存储的数据:

proc princomp data= Sasuser.Live out=Sasuser.Live_Out;
var Touch Chips Driver Compatibility Game;
run;

proc print data=Mouse_Can_Out;
run;

但这比协方差矩阵计算的更多。我只想要协方差矩阵和相关矩阵。

1 个答案:

答案 0 :(得分:0)

为什么不使用PROC CORR

示例:

proc corr noprint data=sashelp.class cov out=cov;
  var age height weight;
run;

proc print data=cov;
run;

结果:

Obs    _TYPE_    _NAME_      Age       Height     Weight

 1      COV      Age        2.2281      6.210     25.186
 2      COV      Height     6.2099     26.287    102.493
 3      COV      Weight    25.1857    102.493    518.652
 4      MEAN               13.3158     62.337    100.026
 5      STD                 1.4927      5.127     22.774
 6      N                  19.0000     19.000     19.000
 7      CORR     Age        1.0000      0.811      0.741
 8      CORR     Height     0.8114      1.000      0.878
 9      CORR     Weight     0.7409      0.878      1.000