PCA主成分分析应用举例

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

###各样本的主成分的值 > predict(student.pr)
Comp.1 Comp.2 Comp.3 Comp.4 [1,] 0.06990950 -0.23813701 -0.35509248 -0.266120139 [2,] 1.59526340 -0.71847399 0.32813232 -0.118056646 [3,] -2.84793151 0.38956679 -0.09731731 -0.279482487 [4,] 0.75996988 0.80604335 -0.04945722 -0.162949298 [5,] -2.73966777 0.01718087 0.36012615 0.358653044 [6,] 2.10583168 0.32284393 0.18600422 -0.036456084 [7,] -1.42105591 -0.06053165 0.21093321 -0.044223092 [8,] -0.82583977 -0.78102576 -0.27557798 0.057288572 [9,] -0.93464402 -0.58469242 -0.08814136 0.181037746 [10,] 2.36463820 -0.36532199 0.08840476 0.045520127 [11,] 2.83741916 0.34875841 0.03310423 -0.031146930 [12,] -2.60851224 0.21278728 -0.33398037 0.210157574 [13,] -2.44253342 -0.16769496 -0.46918095 -0.162987830 [14,] 1.86630669 0.05021384 0.37720280 -0.358821916 [15,] 2.81347421 -0.31790107 -0.03291329 -0.222035112
#### 用数据框的形式输入数据 conomy<-data.frame( x1=c(149.3, 161.2, 171.5, 175.5, 180.8, 190.7, 202.1, 212.4, 226.1, 231.9, 239.0), x2=c(4.2, 4.1, 3.1, 3.1, 1.1, 2.2, 2.1, 5.6, 5.0, 5.1, 0.7), x3=c(108.1, 114.8, 123.2, 126.9, 132.1, 137.7, 146.0, 154.1, 162.3, 164.3, 167.6), y=c(15.9, 16.4, 19.0, 19.1, 18.8, 20.4, 22.7, 26.5, 28.1, 27.6, 26.3)) > conomy x1 x2 x3 y 1 149.3 4.2 108.1 15.9 2 161.2 4.1 114.8 16.4 3 171.5 3.1 123.2 19.0 4 175.5 3.1 126.9 19.1 5 180.8 1.1 132.1 18.8 6 190.7 2.2 137.7 20.4 7 202.1 2.1 146.0 22.7 8 212.4 5.6 154.1 26.5 9 226.1 5.0 162.3 28.1 10 231.9 5.1 164.3 27.6 11 239.0 0.7 167.6 26.3
30名中学生的四项身体指标
#### 用数据框形式输入数据 student<-data.frame( X1=c(148, 139, 160, 149, 159, 142, 153, 150, 151, 139, 140, 161, 158, 140, 137, 152, 149, 145, 160, 156, 151, 147, 157, 147, 157, 151, 144, 141, 139, 148), X2=c(41, 34, 49, 36, 45, 31, 43, 43, 42, 31, 29, 47, 49, 33, 31, 35, 47, 35, 47, 44, 42, 38, 39, 30, 48, 36, 36, 30, 32, 38), X3=c(72, 71, 77, 67, 80, 66, 76, 77, 77, 68, 64, 78, 78, 67, 66, 73, 82, 70, 74, 78, 73, 73, 68, 65, 80, 74, 68, 67, 68, 70), X4=c(78, 76, 86, 79, 86, 76, 83, 79, 80, 74, 74, 84, 83, 77, 73, 79, 79, 77, 87, 85, 82, 78, 80, 75, 88, 80, 76, 76, 73, 78))
PCA主成分分析 应用举例
例1
a=c(177,179 , 95 , 96 , 53 , 32 , -7 ,-4 , -3 ,179,419 , 245 , 131 , 181 , 127 , -2 , 1 , 4 , 95 ,245 , 302 , 60 , 109 , 142 , 4 , 4 , 11 ,96 ,131 , 60 , 153 , 102 , 42 , 4 , 3 , 2 , 53 ,181 , 109 , 102 , 137 , 96 , 4 , 5 , 6 , 32 ,127 , 142 , 42 , 96 , 128 , 2 , 2 , 8 , -7 , -2 , 4 , 4 , 4 , 2 , 34 ,31 , 33 , -4 , 1 , 4 , 3 , 5 , 2 , 31 ,39 , 39 ,-3 , 4 , 11 , 2 , 6 , 8 , 33 ,39 , 48)
Βιβλιοθήκη Baidu
PRINCOMP过程由相关阵出发进行主成分分析. 由相关阵的特征值可以看出,第一主成分的贡 献率已高达88.53%;且前二个主成分的累计贡献 率已达96.36%.因此只须用两个主成分就能很好 地概括这组数据. 另由第三和四个特征值近似为0,可以得出这4 个标准化后的身体指标变量(Xi*,i=1,2,3,4)有近 似的线性关系(即所谓共线性),如 0.505747 X1* -0.690844 X2* +0.461488 X3* -0.232343 X4*≈c(常数).
------------------------------聚类分析
biplot(student.pr) ##画出第一主成分和第二主成分的样本散点图
可以看出那些学生属于高大魁魁梧,如25;哪些同学 属于身材瘦小的,如11和15。细高的同学,如23; 矮 胖的同学,如17.
#### 画碎石图 screeplot(student.pr)
[16,] 0.06392983 0.20718448 0.04334340 0.703533624 [17,] -1.55561022 -1.70439674 -0.33126406 0.007551879 [18,] 1.07392251 -0.06763418 0.02283648 0.048606680 [19,] -2.52174212 0.97274301 0.12164633 -0.390667991 [20,] -2.14072377 0.02217881 0.37410972 0.129548960 [21,] -0.79624422 0.16307887 0.12781270 -0.294140762 [22,] 0.28708321 -0.35744666 -0.03962116 0.080991989 [23,] -0.25151075 1.25555188 -0.55617325 0.109068939 [24,] 2.05706032 0.78894494 -0.26552109 0.388088643 [25,] -3.08596855 -0.05775318 0.62110421 -0.218939612 [26,] -0.16367555 0.04317932 0.24481850 0.560248997 [27,] 1.37265053 0.02220972 -0.23378320 -0.257399715 [28,] 2.16097778 0.13733233 0.35589739 0.093123683 [29,] 2.40434827 -0.48613137 -0.16154441 -0.007914021 [30,] 0.50287468 0.14734317 -0.20590831 -0.122078819
s=matrix(a,ncol=9) S为样本方差阵
求方差阵S的特征值和特征向量
c=eigen(s) c
样本前3个主成分的系数是:
rho=diag(1/(sqrt(diag(s))))%*%s%*%diag(1/(sqrt(diag(s)))) rho
例2
学生身体各指标的主成分分析.随机抽取30名某年级中学生,测 量其身高(X1)、体重(X2)、胸围(X3)和坐高(X4)。 试对中学 生身体指标数据做主成分分析.
> #### 作主成分分析 > student.pr<-princomp(student, cor=TRUE) > > #### 并显示分析结果 summary(student.pr, loadings=TRUE)
Importance of components: Comp.1 Comp.2 Comp.3 Comp.4 Standard deviation 1.8817805 0.55980636 0.28179594 0.25711844 Proportion of Variance 0.8852745 0.07834579 0.01985224 0.01652747 Cumulative Proportion 0.8852745 0.96362029 0.98347253 1.00000000 Loadings: Comp.1 Comp.2 Comp.3 Comp.4 X1 -0.497 0.543 -0.450 0.506 X2 -0.515 -0.210 -0.462 -0.691 X3 -0.481 -0.725 0.175 0.461 X4 -0.507 0.368 0.744 -0.232
利用特征向量各分量的值可以对各主成 分进行解释. 第一大特征值对应的第一个特征向量的 各个分量值均在0.5附近,它反映学生身材 的魁梧程度.身体高大的学生,他的4个部位 的尺寸都比较大;而身体矮小的学生,他的4 个部位的尺寸都比较小.因此我们称第一主 成分为大小因子.
第二大特征值对应的特征向量中第一 (即身高X1的系数)和第四个分量(即坐高 X4的系数)为正值,而第二(即体重X2的系 数)和第三个分量(即胸围X3的系数)为负 值,它反映学生的胖瘦情况,故称第二主 成分为胖瘦因子.
由最大的两个特征值对应的特征向量可以写出第 一和第二主成分: Z1=-0.4970 X1*-0.5146 X2*-0.4809 X3* -0.5069 X4* Z2=0.5432 X1* -0.2102 X2*-0.7246 X3*+0.3683X4* 第一和第二主成分都是标准化后变Xi*(i=1,2,3,4) 的线性组合,且组合系数就是特征向量的分量.
> cor(student) X1 X2 X3 X4 X1 1.0000000 0.8631621 0.7321119 0.9204624 X2 0.8631621 1.0000000 0.8965058 0.8827313 X3 0.7321119 0.8965058 1.0000000 0.7828827 X4 0.9204624 0.8827313 0.7828827 1.0000000 > eigen(cor(student)) $values [1] 3.54109800 0.31338316 0.07940895 0.06610989 $vectors [,1] [,2] [,3] [,4] [1,] -0.4969661 0.5432128 -0.4496271 0.5057471 [2,] -0.5145705 -0.2102455 -0.4623300 -0.6908436 [3,] -0.4809007 -0.7246214 0.1751765 0.4614884 [4,] -0.5069285 0.3682941 0.7439083 -0.2323433
相关文档
最新文档