列出主要组件的值

时间:2013-11-18 14:41:12

标签: pca sas

我在SAS中写了以下内容:

data test;
infile 'C:\Users\Public\Documents\test.dat';
input a b c d e id;
 run;

proc princomp cov out=a;
  var a b c d e;
  run;

proc corr;
  var prin1 prin2 prin3 a b c d e;
  run;

有没有办法列出每个id的主要组件的值?我收到的输出只是摘要统计(即最大和最小)和相关性。

1 个答案:

答案 0 :(得分:2)

如果您希望按ID进行单独分析,则可以使用BY语句。这为每个ID值提供了单独的主要组件。必须按ID对数据集进行排序才能在BY语句中使用它。

proc sort data = test;
    by id;
run;

proc princomp data = test cov out = scores statout = stats;
    var a b c d e;
    by id;
run;

我称之为SCORES的输出数据集应该包含来自TEST的所有变量以及包含主成分分数的新变量。输出数据集STATS包含各种统计信息,包括特征向量。

寻找SAS解决方案的好地方在于广泛的SAS在线文档。 PROC PRINCOMP的文档是here

我希望有所帮助!