Вычислять ковариационную матрицу в SAS из файла вместо записи вручную данных в редакторе - PullRequest
0 голосов
/ 22 мая 2019

Можно ли рассчитать ковариационную и корреляционную матрицу из набора выборочных данных.

Например, я сохранил набор данных в 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 голосов
/ 22 мая 2019

Почему бы не использовать 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
...