SAS主成分分析(求相关阵,特征值,单位特征向量,主成分表达式,贡献率和累计贡献率以及进行数据解释)
随机抽取30名某年级中学生,测量其身高(X1)、体重(X2)、胸围(X3)和坐高(X4),数据如下表,nX1X2X3X4nX1X2X3X41148417278
随机抽取30名某年级中学生,测量其身高(X1)、体重(X2)、胸围(X3)和坐高(X4),数据如下表,
n | X1 | X2 | X3 | X4 | n | X1 | X2 | X3 | X4 |
1 | 148 | 41 | 72 | 78 | 16 | 152 | 35 | 73 | 79 |
2 | 139 | 34 | 71 | 76 | 17 | 149 | 47 | 82 | 79 |
3 | 160 | 49 | 77 | 86 | 18 | 145 | 35 | 70 | 77 |
4 | 149 | 36 | 67 | 79 | 19 | 160 | 47 | 74 | 87 |
5 | 159 | 45 | 80 | 86 | 20 | 156 | 44 | 78 | 85 |
6 | 142 | 31 | 66 | 76 | 21 | 151 | 42 | 73 | 82 |
7 | 153 | 43 | 76 | 83 | 22 | 147 | 38 | 73 | 78 |
8 | 150 | 43 | 77 | 79 | 23 | 157 | 39 | 68 | 80 |
9 | 151 | 42 | 77 | 80 | 24 | 147 | 30 | 65 | 75 |
10 | 139 | 31 | 68 | 74 | 25 | 157 | 48 | 80 | 88 |
11 | 140 | 29 | 64 | 74 | 26 | 151 | 36 | 74 | 80 |
12 | 161 | 47 | 78 | 84 | 27 | 144 | 36 | 68 | 76 |
13 | 158 | 49 | 78 | 83 | 28 | 141 | 30 | 67 | 76 |
14 | 140 | 33 | 67 | 77 | 29 | 139 | 32 | 68 | 73 |
15 | 137 | 31 | 66 | 73 | 30 | 148 | 38 | 70 | 78 |
试用SAS编程完成下列问题
- 求其样本相关矩阵R及它的特征值和相应正交单位化特征向量;
- 求前两个标准化样本主成分及其累计贡献率;
- 试对中学生身体指标数据的做解释。
实验代码:
proc import out=temp2
datafile="C:\Users\86166\Desktop\IT\SAS实验\实验7\1.xls"
DBMS=EXCEL2000 replace;
run;
/*proc standard mean=0 std=1 data=temp1 out=temp2;
var X1-X4;
run;*/
proc princomp data=temp2 prefix=S out=temp3 outstat=temp4;/*std (type=cov/corr)*/
var X1-X4;
run;
options ps=32 ls=85;
proc plot data=temp3;
plot S2*S1 $ n="*"/
href=-1 href=2 vref=0;/*在横坐标S1=-1和2处画垂线,在纵坐标Z2=0处画垂线*/
/*title '主成分散点图';*/
run;
proc sort data=temp3; /*按S1的得分值从小到大排序*/
by S1;
run;
proc print data=temp3;
var n S1 S2 X1-X4;
run;
proc sort data=temp3; /*按S2的得分值从小到大排序*/
by S2;
run;
proc print data=temp3;
var n S1 S2 X1-X4;
run;
proc print data=temp4;
run;
实验解释和分析:
1、其样本相关矩阵R及它的特征值和相应正交单位化特征向量:
相关阵:
特征值: 正交单位化特征向量:
2、前两个标准化样本主成分及其累计贡献率:
3、试对中学生身体指标数据的做解释:
PRINCOMP过程由相关阵出发进行主成分分析.由输出7.2.1中相关阵的特征值可以看出,第一主成分的贡献率已高达88.53%;且前二个主成分的累计贡献率已达96.36%.因此只须用两个主成分就能很好地概括这组数据.
另由第三和四个特征值近似为0,可以得出这4个标准化后的身体指标变量(Xi,i=1,2,3,4)有近似的线性关系(即所谓共线性),如
0.505747X1-0.690844X2+0.461488X3-0.232343X4≈c(常数).
由最大的两个特征值对应的特征向量可以写出第一和第二主成分:
S1=0.4970X1+0.5146X2+0.4809X3+0.5069X4
S2=-0.5432X1+0.2102X2+0.7246X3-0.3683X4
第一和第二主成分都是标准化后变量Xi(i=1,2,3,4)的线性组合,且组合系数就是特征向量的分量.
由于第一主成分对所有变量都有近似相等的载荷,因此可以认为第一主成分是对学生身材的总度量。他的特征向量的每个分量均在0.5附近,且都是正值,它反映学生身材的魁梧程度.身体高大的学生,他的4个部位的尺寸都比较大;而身体矮小的学生,他的4个部位的尺寸都比较小.因此我们称第一主成分为大小因子。
由于第二主成分在其特征向量的第一个分量(即身高X1的系数(载荷))和第四个分量(即坐高X4的系数(载荷))为负值,而第二(即体重X2的系数)和第三个分量(即胸围X3的系数)为正值,其中胸围X3的载荷是最高的,所以它直接反映学生的胖瘦情况在学生身材上体现,故称第二主成分为胖瘦因子.
由S1的排序表中可知得分值越低的学生身材魁梧程度越低,即越矮小,如学生11排在第一说明他的身高矮小不魁梧;得分值越高的学生则反之,如学生25排在最后说明他的身高高大,体格魁梧。
同理如果按照S2的来进行排序可知,得分值越低的学生他就越廋,得分值高的学生他就越胖。(这个取决于因子的载荷为正,故得分值越高,因子拟合程度越高,所以分高,重量和胸围越大,人越胖)
PLOT过程产生的输出图形,从图中可以直观地看出,按学生的身体指标尺寸,这30名学生大约应分成三组(以第一主成分得分值为-1和2为分界点).
每一组包括哪几名学生由每个散点旁边的序号可以得知.更详细的信息可从PRINT过程产生的输出数据列表中得到.
以上输出列表中把30个观测按第一主成分从小到大重新排序后的输出结果.从这里可以得到分为三组时各组学生的更多的信息如下:G1={11,15,29,10,28,6,24,14,2,27,18},G2={4,30,22,1,16,26,23,21,8,9,7,17},G3={20,13,19,12,5,3,25}若考虑用S1 ,S2进行聚类,这就是主成分聚类方法.本次实验没有按S2来排序打印,也可参考上述方法进行操作。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)