主成分分析法matlab实现,实例演示

合集下载

主成分分析PCA(含有详细推导过程以及案例分析matlab版)

主成分分析PCA(含有详细推导过程以及案例分析matlab版)

主成分分析法(PCA)在实际问题中,我们经常会遇到研究多个变量的问题,而且在多数情况下,多个变量之间常常存在一定的相关性。

由于变量个数较多再加上变量之间的相关性,势必增加了分析问题的复杂性。

如何从多个变量中综合为少数几个代表性变量,既能够代表原始变量的绝大多数信息,又互不相关,并且在新的综合变量基础上,可以进一步的统计分析,这时就需要进行主成分分析。

I. 主成分分析法(PCA)模型(一)主成分分析的基本思想主成分分析是采取一种数学降维的方法,找出几个综合变量来代替原来众多的变量,使这些综合变量能尽可能地代表原来变量的信息量,而且彼此之间互不相关。

这种将把多个变量化为少数几个互相无关的综合变量的统计分析方法就叫做主成分分析或主分量分析。

主成分分析所要做的就是设法将原来众多具有一定相关性的变量,重新组合为一组新的相互无关的综合变量来代替原来变量。

通常,数学上的处理方法就是将原来的变量做线性组合,作为新的综合变量,但是这种组合如果不加以限制,则可以有很多,应该如何选择呢?如果将选取的第一个线性组合即第一个综合变量记为1F ,自然希望它尽可能多地反映原来变量的信息,这里“信息”用方差来测量,即希望)(1F Var 越大,表示1F 包含的信息越多。

因此在所有的线性组合中所选取的1F 应该是方差最大的,故称1F 为第一主成分。

如果第一主成分不足以代表原来p 个变量的信息,再考虑选取2F 即第二个线性组合,为了有效地反映原来信息,1F 已有的信息就不需要再出现在2F 中,用数学语言表达就是要求0),(21=F F Cov ,称2F 为第二主成分,依此类推可以构造出第三、四……第p 个主成分。

(二)主成分分析的数学模型对于一个样本资料,观测p 个变量p x x x ,,21,n 个样品的数据资料阵为:⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=np n n p p x x x x x x x x x X212222111211()p x x x ,,21=其中:p j x x x x nj j j j ,2,1,21=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛= 主成分分析就是将p 个观测变量综合成为p 个新的变量(综合变量),即⎪⎪⎩⎪⎪⎨⎧+++=+++=+++=ppp p p p p p p p x a x a x a F x a x a x a F x a x a x a F 22112222121212121111 简写为:p jp j j j x x x F ααα+++= 2211p j ,,2,1 =要求模型满足以下条件:①j i F F ,互不相关(j i ≠,p j i ,,2,1, =)②1F 的方差大于2F 的方差大于3F 的方差,依次类推③.,2,1122221p k a a a kp k k ==+++于是,称1F 为第一主成分,2F 为第二主成分,依此类推,有第p 个主成分。

主成分分析matlab理论+实验

主成分分析matlab理论+实验
x2
x1
若将该坐标系按逆时针方向旋转某个角度θ变成新坐标系,变 换公式为
Y1 X 1 cos X 2 sin Y2 X 1 sin X 2 cos
y2 x2
y1
x1
记x1,x2,…,xP为原变量指标,z1,z2,…,zm(m<p)为新
变量指标
z1 a11 x1 a12 x2 L a1 p x p z2 a21 x1 a22 x2 L a2 p x p ............ z a x a x L a x m1 1 m2 2 mp p m
七. 主成分分析的应用
1. 综合评价 进行综合评价时,如何选择评价指标以及对这些指标进 行综合评价?一般做法是通过对各指标加权的办法。 由于主成分分析能从选定的指标体系中归纳出大部分信 息,根据主成分提供的信息进行综合评价,不失为一个可行 的选择。
利用主成分进行综合评价时,对主成分进行加权综合, 权数根据其方差贡献率确定 。
例5-3 用Matlab自带数据进行主成分分析,数据文件. hald文件包含影响温度的4个因素,保存在ingredients变量 中。代码见5.3.m
第一步:考虑变量之间相关性 load hald %载入Matlab 自带的数据文件 corrcoef(ingredients) % 自变量相关系数矩阵 ans = 1.0000 0.2286 -0.8241 -0.2454 0.2286 1.0000 -0.1392 -0.9730 -0.8241 -0.1392 1.0000 0.0295 -0.2454 -0.9730 0.0295 1.0000 第二步:主成分分析 [pc,score,latent,tsquare]=princomp(ingredients)

matlab主成分分析案例

matlab主成分分析案例

1•设随机向量X= (X i , X 2, X 3)T 的协方差与相关系数矩阵分别为1 4,R4 25分别从,R 出发,求X 的各主成分以及各主成分的贡献率并比较差异况。

解答: >> S=[1 4;4 25];>> [P C,vary,ex plain ed]=p cacov(S); 总体主成分分析:>> [P C,vary,ex plain ed]=p cacov(S) 主成分交换矩阵: PC =-0.1602 -0.9871 -0.9871 0.1602 主成分方差向量: vary = 25.6491 0.3509各主成分贡献率向量 explained = 98.6504 1.3496则由程序输出结果得出,X 的主成分为: Y 1=-0.1602X 1-0.9871X 2 Y 2=-0.9871X 1+0.1602X 2两个主成分的贡献率分别为:98.6504%, 1.3496%;贝U 若用第一个主成分代替原 来的变量,信息损失率仅为1.3496,是很小的。

2.根据安徽省2007年各地市经济指标数据,见表 5.2,求解: (1) 利用主成分分析对17个地市的经济发展进行分析,给出排名; (2) 此时能否只用第一主成分进行排名?为什么?1 0.8 0.8 11.0000 0.9877 0.9980 0.9510 0.9988 0.9820 0.4281 0.9999解答:(1)>> clear>> A=[491.70,380.31,158.39,121.54,22.74,439.65,344.44,17.43;21.12,30.55,6.40,12.40,3.31,21.17,17.71,2.03;1.71,2.35,0.57,0.68,0.13,1.48,1.36,-0.03;9.83,9.05,3.13,3.43,0.64,8.76,7.81,0.54;64.06,77.86,20.63,30.37,5.96,63.57,52.15,4.71;30.38,46.90,9.19,9.83,17.87,28.24,21.90,3.80;31.20,70.07,8.93,18.88,33.05,31.17,26.50,2.84;79.18,62.09,20.78,24.47,3.51,71.29,59.07,6.78;47.81,40.14,17.50,9.52,4.14,45.70,34.73,4.47;104.69,78.95,29.61,25.96,5.39,98.08,84.81,3.81;21.07,17.83,6.21,6.22,1.90,20.24,16.46,1.09;214.19,146.78,65.16,41.62,4.39,194.98,171.98,11.05;31.16,27.56,8.80,9.44,1.47,28.83,25.22,1.05;12.76,14.16,3.66,4.07,1.57,11.95,10.24,0.73;6.45,5.37,2.39,2.20,0.40,5.97,4.79,0.52;39.43,44.60,15.17,15.72,3.27,36.03,27.87,3.48;5.02,3.62,1.63,1.42,0.53,4.45,4.04,0.02];得到的相关系数矩阵为:>> R=corrcoef(A)R =0.9877 1.0000 0.9884 0.9947 0.5438 0.9885 0.9835 0.94850.9988 0.9884 1.0000 0.9824 0.4294 0.9984 0.9948 0.94620.9820 0.9947 0.9824 1.0000 0.5051 0.9829 0.9763 0.93910.4281 0.5438 0.4294 0.5051 1.0000 0.4311 0.4204 0.45570.9999 0.9885 0.9984 0.9829 0.4311 1.0000 0.9986 0.95300.9980 0.9835 0.9948 0.9763 0.4204 0.99861.0000 0.95690.9510 0.9485 0.9462 0.9391 0.4557 0.9530 0.9569 1.0000计算特征值与特征向量:>> [v,d]=eig(corrcoef(A))V 一-0.3723 0.1179 0.1411 -0.2543 -0.0459 0.5917 -0.5641 0.3041-0.3741 -0.0343 0.1606 0.2247 -0.1514 -0.6284 -0.1535 0.5841-0.3719 0.1152 0.1957 -0.1954 -0.6909 -0.1351 0.0383 -0.5244-0.3713 0.0096 0.2368 0.7875 0.2168 0.2385 0.0303 -0.2845-0.1949 -0.9689 -0.0004 -0.1242 0.0119 0.0628 0.0151 -0.0593-0.3725 0.1143 0.1222 -0.2302 0.0924 0.2259 0.7946 0.2988-0.3716 0.1272 0.0353 -0.3800 0.6591 -0.3521 -0.1557 -0.3428-0.3613 0.0596 -0.9185 0.1165 -0.0872 0.0302 0.0022 -0.0096d =7.11350 00 00 0 0.77700.08100 0.02370 0.00410 0 0 0 0.00000 0 0.0001各主成分贡献率:>> w=sum(d)/sum(sum(d))计算各个主成分得分:>> F=[A-ones(17,1)*mean(A)]*v(:,8)224.3503 -24.0409 -40.0941 -35.9075 4.7573 -12.6102 -2.85731.8038 -13.9012 13.4541 -29.3847 62.3383 -23.3175 -32.4285 -38.1309 -14.8637 -39.1675>> [F1,I1]=sort(F,'descend')F1按从大到小的顺序给个主成分得分排名: F1 = 224.35030.8892 0.0971 0.0000 0.00000.0101 0.0030 0.0005 0.00010.000662.338313.45414.75731.8038 -2.8573 12.6102 13.9012 14.8637 23.3175 24.0409 29.3847 32.4285 35.9075 38.1309 39.1675 -40.0941I1 给出各个名次的序号:I1 =1121058769161321114415173 >> [F2,I2]=sort(I1)F2 =34567891011121314151617I2 给出个城市排名,即所求排名:I2 =1111714476583122101315916(2)由于第一主成分的贡献率大于80%,其他各成分贡献率都太小,所以只能用第一主成分进行排名。

matlab主成分分析案例

matlab主成分分析案例

1.设随机向量X=(X 1,X 2,X 3)T 的协方差与相关系数矩阵分别为⎪⎪⎭⎫ ⎝⎛=∑25441,⎪⎪⎭⎫⎝⎛=18.08.01R 分别从∑,R 出发,求X 的各主成分以及各主成分的贡献率并比较差异况。

解答:>> S=[1 4;4 25];>> [PC,vary,explained]=pcacov(S); 总体主成分分析:>> [PC,vary,explained]=pcacov(S) 主成分交换矩阵: PC =-0.1602 -0.9871 -0.9871 0.1602 主成分方差向量: vary = 25.6491 0.3509各主成分贡献率向量 explained = 98.6504 1.3496则由程序输出结果得出,X 的主成分为: Y 1=-0.1602X 1-0.9871X 2 Y 2=-0.9871X 1+0.1602X 2两个主成分的贡献率分别为:98.6504%,1.3496%;则若用第一个主成分代替原来的变量,信息损失率仅为1.3496,是很小的。

2.根据安徽省2007年各地市经济指标数据,见表5.2,求解: (1)利用主成分分析对17个地市的经济发展进行分析,给出排名; (2)此时能否只用第一主成分进行排名?为什么?解答:(1)>> clear>> A=[491.70,380.31,158.39,121.54,22.74,439.65,344.44,17.43;21.12,30.55,6.40,12.40,3.31,21.17,17.71,2.03;1.71,2.35,0.57,0.68,0.13,1.48,1.36,-0.03;9.83,9.05,3.13,3.43,0.64,8.76,7.81,0.54;64.06,77.86,20.63,30.37,5.96,63.57,52.15,4.71;30.38,46.90,9.19,9.83,17.87,28.24,21.90,3.80;31.20,70.07,8.93,18.88,33.05,31.17,26.50,2.84;79.18,62.09,20.78,24.47,3.51,71.29,59.07,6.78;47.81,40.14,17.50,9.52,4.14,45.70,34.73,4.47;104.69,78.95,29.61,25.96,5.39,98.08,84.81,3.81;21.07,17.83,6.21,6.22,1.90,20.24,16.46,1.09;214.19,146.78,65.16,41.62,4.39,194.98,171.98,11.05;31.16,27.56,8.80,9.44,1.47,28.83,25.22,1.05;12.76,14.16,3.66,4.07,1.57,11.95,10.24,0.73;6.45,5.37,2.39,2.20,0.40,5.97,4.79,0.52;39.43,44.60,15.17,15.72,3.27,36.03,27.87,3.48;5.02,3.62,1.63,1.42,0.53,4.45,4.04,0.02];得到的相关系数矩阵为:>> R=corrcoef(A)R =1.0000 0.9877 0.9988 0.9820 0.4281 0.9999 0.9980 0.95100.9877 1.0000 0.9884 0.9947 0.5438 0.98850.9835 0.94850.9988 0.9884 1.0000 0.9824 0.4294 0.99840.9948 0.94620.9820 0.9947 0.9824 1.0000 0.5051 0.98290.9763 0.93910.4281 0.5438 0.4294 0.5051 1.0000 0.43110.4204 0.45570.9999 0.9885 0.9984 0.9829 0.4311 1.00000.9986 0.95300.9980 0.9835 0.9948 0.9763 0.4204 0.99861.0000 0.95690.9510 0.9485 0.9462 0.9391 0.4557 0.95300.9569 1.0000计算特征值与特征向量:>> [v,d]=eig(corrcoef(A))v =-0.3723 0.1179 0.1411 -0.2543 -0.0459 0.5917-0.5641 0.3041-0.3741 -0.0343 0.1606 0.2247 -0.1514 -0.6284-0.1535 0.5841-0.3719 0.1152 0.1957 -0.1954 -0.6909 -0.13510.0383 -0.5244-0.3713 0.0096 0.2368 0.7875 0.2168 0.23850.0303 -0.2845-0.1949 -0.9689 -0.0004 -0.1242 0.0119 0.06280.0151 -0.0593-0.3725 0.1143 0.1222 -0.2302 0.0924 0.22590.7946 0.2988-0.3716 0.1272 0.0353 -0.3800 0.6591 -0.3521-0.1557 -0.3428-0.3613 0.0596 -0.9185 0.1165 -0.0872 0.03020.0022 -0.0096d =7.1135 0 0 0 0 0 0 00 0.7770 0 0 0 0 0 00 0 0.0810 0 0 0 0 00 0 0 0.0237 0 0 0 00 0 0 0 0.0041 00 00 0 0 0 0 0.0006 0 00 0 0 0 0 00.0000 00 0 0 0 0 0 0 0.0001各主成分贡献率:>> w=sum(d)/sum(sum(d))w =0.8892 0.0971 0.0101 0.0030 0.0005 0.00010.0000 0.0000计算各个主成分得分:>> F=[A-ones(17,1)*mean(A)]*v(:,8)F =224.3503-24.0409-40.0941-35.90754.7573-12.6102-2.85731.8038-13.901213.4541-29.384762.3383-23.3175-32.4285-38.1309-14.8637-39.1675>> [F1,I1]=sort(F,'descend')F1按从大到小的顺序给个主成分得分排名:F1 =224.350362.338313.45414.75731.8038-2.8573-12.6102-13.9012-14.8637-23.3175-24.0409-29.3847-32.4285-35.9075-38.1309-39.1675-40.0941I1给出各个名次的序号:I1 =1121058769161321114415173>> [F2,I2]=sort(I1)F2 =1234567891011121314151617I2给出个城市排名,即所求排名:I2 =1111714476583122101315916(2)由于第一主成分的贡献率大于80%,其他各成分贡献率都太小,所以只能用第一主成分进行排名。

主成分分析PCA(含有详细推导过程以及案例分析matlab版)

主成分分析PCA(含有详细推导过程以及案例分析matlab版)

主成分分析PCA(含有详细推导过程以及案例分析matlab版)主成分分析法(PCA)在实际问题中,我们经常会遇到研究多个变量的问题,⽽且在多数情况下,多个变量之间常常存在⼀定的相关性。

由于变量个数较多再加上变量之间的相关性,势必增加了分析问题的复杂性。

如何从多个变量中综合为少数⼏个代表性变量,既能够代表原始变量的绝⼤多数信息,⼜互不相关,并且在新的综合变量基础上,可以进⼀步的统计分析,这时就需要进⾏主成分分析。

I.主成分分析,⾃然希望它尽可能多地反映原来变量的信息,这⾥“信息”⽤⽅差来测量,即希望越⼤,表⽰包含的信息越多。

因此在所有的线性组合中所选取的应该是⽅差最⼤的,故称为第⼀主成分。

如果第⼀主成分不⾜以代表原来个变量的信息,再考虑选取即第⼆个线性组合,为了有效地反映原来信息,已有的信息就不需要再出现在中,⽤数学语⾔表达就是要求,称为第⼆主成分,依此类推可以构造出第三、四……第个主成分。

(⼆)主成分分析的数学模型对于⼀个样本资料,观测个变量,个样品的数据资料阵为:其中:主成分分析就是将个观测变量综合成为个新的变量(综合变量),即简写为:要求模型满⾜以下条件:①互不相关(,)②的⽅差⼤于的⽅差⼤于的⽅差,依次类推③于是,称为第⼀主成分,为第⼆主成分,依此类推,有第个主成分。

主成分⼜叫主分量。

这⾥我们称为主成分系数。

上述模型可⽤矩阵表⽰为:,其中称为主成分系数矩阵。

(三)主成分分析的⼏何解释假设有个样品,每个样品有⼆个变量,即在⼆维空间中讨论主成分的⼏何意义。

设个样品在⼆维空间中的分布⼤致为⼀个椭园,如下图所⽰:图1主成分⼏何解释图将坐标系进⾏正交旋转⼀个⾓度,使其椭圆长轴⽅向取坐标,在椭圆短轴⽅向取坐标,旋转公式为写成矩阵形式为:其中为坐标旋转变换矩阵,它是正交矩阵,即有,即满⾜。

经过旋转变换后,得到下图的新坐标:图2主成分⼏何解释图新坐标有如下性质:(1)个点的坐标和的相关⼏乎为零。

(2)⼆维平⾯上的个点的⽅差⼤部分都归结为轴上,⽽轴上的⽅差较⼩。

主成分分析yuMatLAB应用

主成分分析yuMatLAB应用

§10.利用Matlab 编程实现主成分分析1.概述Matlab 语言是当今国际上科学界 (尤其是自动控制领域) 最具影响力、也是最有活力的软件。

它起源于矩阵运算,并已经发展成一种高度集成的计算机语言。

它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、与其他程序和语言的便捷接口的功能。

Matlab 语言在各国高校与研究单位起着重大的作用。

主成分分析是把原来多个变量划为少数几个综合指标的一种统计分析方法,从数学角度来看,这是一种降维处理技术。

1.1主成分分析计算步骤① 计算相关系数矩阵⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=pp p p p p r r r r r r r r r R 212222111211 (1) 在(3.5.3)式中,r ij (i ,j=1,2,…,p )为原变量的xi 与xj 之间的相关系数,其计算公式为∑∑∑===----=nknk j kj i ki nkj kj i ki ij x x x x x x x x r 11221)()())(( (2)因为R 是实对称矩阵(即r ij =r ji ),所以只需计算上三角元素或下三角元素即可。

② 计算特征值与特征向量首先解特征方程0=-R I λ,通常用雅可比法(Jacobi )求出特征值),,2,1(p i i =λ,并使其按大小顺序排列,即0,21≥≥≥≥pλλλ ;然后分别求出对应于特征值i λ的特征向量),,2,1(p i e i =。

这里要求i e =1,即112=∑=pj ij e ,其中ij e 表示向量i e 的第j 个分量。

③ 计算主成分贡献率及累计贡献率 主成分i z 的贡献率为),,2,1(1p i pk ki=∑=λλ累计贡献率为),,2,1(11p i pk kik k=∑∑==λλ一般取累计贡献率达85—95%的特征值m λλλ,,,21 所对应的第一、第二,…,第m (m ≤p )个主成分。

主成分分析matlab程序

主成分分析matlab程序

Matlab编程实现主成分分析.程序结构及函数作用在软件Matlab中实现主成分分析可以采取两种方式实现:一是通过编程来实现;二是直接调用Matlab种自带程序实现。

下面主要主要介绍利用Matlab 的矩阵计算功能编程实现主成分分析。

1程序结构主函数子函数2函数作用——用总和标准化法标准化矩阵——计算相关系数矩阵;计算特征值和特征向量;对主成分进行排序;计算各特征值贡献率;挑选主成分(累计贡献率大于85%),输出主成分个数;计算主成分载荷——计算各主成分得分、综合得分并排序——读入数据文件;调用以上三个函数并输出结果3.源程序总和标准化法标准化矩阵%,用总和标准化法标准化矩阵function std=cwstd(vector)cwsum=sum(vector,1); %对列求和[a,b]=size(vector); %矩阵大小,a为行数,b为列数for i=1:afor j=1:bstd(i,j)= vector(i,j)/cwsum(j);endend计算相关系数矩阵%function result=cwfac(vector);fprintf('相关系数矩阵:\n')std=CORRCOEF(vector) %计算相关系数矩阵fprintf('特征向量(vec)及特征值(val):\n')[vec,val]=eig(std) %求特征值(val)及特征向量(vec)newval=diag(val) ;[y,i]=sort(newval) ; %对特征根进行排序,y为排序结果,i为索引fprintf('特征根排序:\n')for z=1:length(y)newy(z)=y(length(y)+1-z);endfprintf('%g\n',newy)rate=y/sum(y);fprintf('\n贡献率:\n')newrate=newy/sum(newy)sumrate=0;newi=[];for k=length(y):-1:1sumrate=sumrate+rate(k);newi(length(y)+1-k)=i(k);if sumrate> break;endend %记下累积贡献率大85%的特征值的序号放入newi中fprintf('主成分数:%g\n\n',length(newi));fprintf('主成分载荷:\n')for p=1:length(newi)for q=1:length(y)result(q,p)=sqrt(newval(newi(p)))*vec(q,newi(p));endend %计算载荷disp(result)%,计算得分function score=cwscore(vector1,vector2);sco=vector1*vector2;csum=sum(sco,2);[newcsum,i]=sort(-1*csum);[newi,j]=sort(i);fprintf('计算得分:\n')score=[sco,csum,j]%得分矩阵:sco为各主成分得分;csum为综合得分;j为排序结果%function print=cwprint(filename,a,b);%filename为文本文件文件名,a为矩阵行数(样本数),b为矩阵列数(变量指标数)fid=fopen(filename,'r')vector=fscanf(fid,'%g',[a b]);fprintf('标准化结果如下:\n')v1=cwstd(vector)result=cwfac(v1);cwscore(v1,result);4.程序测试例题原始数据中国大陆35个大城市某年的10项社会经济统计指标数据见下表。

主成分分析及matlab实现 ppt课件

主成分分析及matlab实现  ppt课件

指标的影响,可单独看成是工业总产值的影响。
ppt课件
21
四.主成分分析的应用
1.主成分分析用于系统评估 利用主成分F1…,Fp做线性组合,并以
每个主成分 Fi 的方差贡献率 作为权数 构造一个综合评价函数:
也称 y 为评估指数,依据对每个系统计算 出的 y 值大小进行排序比较或分类划级。
ppt课件
k 1
n
n
(xki xi )2 (xkj x j )2
k 1
k 1
10
3.求R的特征根 及相应的单位特征向量:
4.写出主成分
ppt课件
11
计算主成分贡献率及累计贡献率
✓ 贡献率
i
p
k
k 1
✓累计贡献率
(i 1,2, , p)
i
k
k 1
p
k
k 1
Y * 0.68998Z1 0.1913Z2

0.4804x
* 1
0.2211x
* 2
0.4825x
* 3
用原变量表示的回归方程
Y 9.130 0.0727x1 0.6091x2 0.1062x3
ppt课件
31
ppt课件
28
包含的信息量次之为29.34%,它的主要代表变量为X3(地理 结构)、X6(资源配置)、X9 (可持续性),其权重系数分别为 0.5299、0.5273、0.4589,第三新因子 Z3包含的信息量为 11.97%,代表总量为 X9(可持续性)、 X5(物质还原),权重 系数分别为0.5933、0.5664。这些代表变量反映了各自对该 新因子作用的大小,它们是生态环境系统中最重要的影响因 素。

主成分分析报告matlab程序

主成分分析报告matlab程序

Matlab编程实现主成分分析.程序结构及函数作用在软件Matlab中实现主成分分析可以采取两种方式实现:一是通过编程来实现;二是直接调用Matlab种自带程序实现。

下面主要主要介绍利用Matlab 的矩阵计算功能编程实现主成分分析。

1程序结构2函数作用Cwstd.m——用总和标准化法标准化矩阵Cwfac.m——计算相关系数矩阵;计算特征值和特征向量;对主成分进行排序;计算各特征值贡献率;挑选主成分(累计贡献率大于85%),输出主成分个数;计算主成分载荷Cwscore.m——计算各主成分得分、综合得分并排序Cwprint.m——读入数据文件;调用以上三个函数并输出结果3.源程序3.1 cwstd.m总和标准化法标准化矩阵%cwstd.m,用总和标准化法标准化矩阵function std=cwstd(vector)cwsum=sum(vector,1); %对列求和[a,b]=size(vector); %矩阵大小,a为行数,b为列数for i=1:afor j=1:bstd(i,j)= vector(i,j)/cwsum(j);endend3.2 cwfac.m计算相关系数矩阵%cwfac.mfunction result=cwfac(vector);fprintf('相关系数矩阵:\n')std=CORRCOEF(vector) %计算相关系数矩阵fprintf('特征向量(vec)及特征值(val):\n')[vec,val]=eig(std) %求特征值(val)及特征向量(vec)newval=diag(val) ;[y,i]=sort(newval) ; %对特征根进行排序,y为排序结果,i为索引fprintf('特征根排序:\n')for z=1:length(y)newy(z)=y(length(y)+1-z);endfprintf('%g\n',newy)rate=y/sum(y);fprintf('\n贡献率:\n')newrate=newy/sum(newy)sumrate=0;newi=[];for k=length(y):-1:1sumrate=sumrate+rate(k);newi(length(y)+1-k)=i(k);if sumrate>0.85 break;endend %记下累积贡献率大85%的特征值的序号放入newi中fprintf('主成分数:%g\n\n',length(newi));fprintf('主成分载荷:\n')for p=1:length(newi)for q=1:length(y)result(q,p)=sqrt(newval(newi(p)))*vec(q,newi(p));endend %计算载荷disp(result)3.3 cwscore.m%cwscore.m,计算得分function score=cwscore(vector1,vector2);sco=vector1*vector2;csum=sum(sco,2);[newcsum,i]=sort(-1*csum);[newi,j]=sort(i);fprintf('计算得分:\n')score=[sco,csum,j]%得分矩阵:sco为各主成分得分;csum为综合得分;j为排序结果3.4 cwprint.m%cwprint.mfunction print=cwprint(filename,a,b);%filename为文本文件文件名,a为矩阵行数(样本数),b为矩阵列数(变量指标数)fid=fopen(filename,'r')vector=fscanf(fid,'%g',[a b]);fprintf('标准化结果如下:\n')v1=cwstd(vector)result=cwfac(v1);cwscore(v1,result);4.程序测试例题4.1原始数据中国大陆35个大城市某年的10项社会经济统计指标数据见下表。

主成分分析matlab程序

主成分分析matlab程序

Matlab编程实现主成分分析.程序结构及函数作用在软件Matlab中实现主成分分析可以采取两种方式实现:一是通过编程来实现;二是直接调用Matlab种自带程序实现。

下面主要主要介绍利用Matlab 的矩阵计算功能编程实现主成分分析。

1程序结构2函数作用——用总和标准化法标准化矩阵——计算相关系数矩阵;计算特征值和特征向量;对主成分进行排序;计算各特征值贡献率;挑选主成分(累计贡献率大于85%),输出主成分个数;计算主成分载荷——计算各主成分得分、综合得分并排序——读入数据文件;调用以上三个函数并输出结果3.源程序总和标准化法标准化矩阵%,用总和标准化法标准化矩阵function std=cwstd(vector)cwsum=sum(vector,1); %对列求和[a,b]=size(vector); %矩阵大小,a为行数,b为列数for i=1:afor j=1:bstd(i,j)= vector(i,j)/cwsum(j);endend计算相关系数矩阵%function result=cwfac(vector);fprintf('相关系数矩阵:\n')std=CORRCOEF(vector) %计算相关系数矩阵fprintf('特征向量(vec)及特征值(val):\n')[vec,val]=eig(std) %求特征值(val)及特征向量(vec)newval=diag(val) ;[y,i]=sort(newval) ; %对特征根进行排序,y为排序结果,i为索引fprintf('特征根排序:\n')for z=1:length(y)newy(z)=y(length(y)+1-z);endfprintf('%g\n',newy)rate=y/sum(y);fprintf('\n贡献率:\n')newrate=newy/sum(newy)sumrate=0;newi=[];for k=length(y):-1:1sumrate=sumrate+rate(k);newi(length(y)+1-k)=i(k);if sumrate> break;endend %记下累积贡献率大85%的特征值的序号放入newi中fprintf('主成分数:%g\n\n',length(newi));fprintf('主成分载荷:\n')for p=1:length(newi)for q=1:length(y)result(q,p)=sqrt(newval(newi(p)))*vec(q,newi(p));endend %计算载荷disp(result)%,计算得分function score=cwscore(vector1,vector2);sco=vector1*vector2;csum=sum(sco,2);[newcsum,i]=sort(-1*csum);[newi,j]=sort(i);fprintf('计算得分:\n')score=[sco,csum,j]%得分矩阵:sco为各主成分得分;csum为综合得分;j为排序结果%function print=cwprint(filename,a,b);%filename为文本文件文件名,a为矩阵行数(样本数),b为矩阵列数(变量指标数)fid=fopen(filename,'r')vector=fscanf(fid,'%g',[a b]);fprintf('标准化结果如下:\n')v1=cwstd(vector)result=cwfac(v1);cwscore(v1,result);4.程序测试例题原始数据中国大陆35个大城市某年的10项社会经济统计指标数据见下表。

主成分分析法例子与matlab中的应用

主成分分析法例子与matlab中的应用

主成分分析法例子与matlab 中的应运可联系我邮箱 ******************1.概述主成分分析也称主分量分析,旨在利用降维的思想,把多指标转化为少数几个综合指标。

在实证问题研究中,为了全面、系统地分析问题,我们必须考虑众多影响因素。

这些涉及的因素一般称为指标,在多元统计分析中也称为变量。

因为每个变量都在不同程度上反映了所研究问题的某些信息,并且指标之间彼此有一定的相关性,因而所得的统计数据反映的信息在一定程度上有重叠。

在用统计方法研究多变量问题时,变量太 多会增加计算量和增加分析问题的复杂性,人们希望在进行定量分析的过程中,涉及的变量较少,得到的信息量较多。

1.1主成分分析计算步骤① 计算相关系数矩阵⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡=pp p p p p r r r r r r r r r R 212222111211 (1)在(3.5.3)式中,r ij (i ,j=1,2,…,p )为原变量的xi 与xj 之间的相关系数,其计算公式为∑∑∑===----=nk nk j kji kink j kj i kiij x xx xx x x xr 11221)()())(( (2)因为R 是实对称矩阵(即r ij =r ji ),所以只需计算上三角元素或下三角元素即可。

② 计算特征值与特征向量首先解特征方程0=-R I λ,通常用雅可比法(Jacobi )求出特征值),,2,1(p i i =λ,并使其按大小顺序排列,即0,21≥≥≥≥pλλλ ;然后分别求出对应于特征值i λ的特征向量),,2,1(p i e i =。

这里要求i e =1,即112=∑=pj ij e ,其中ij e 表示向量i e 的第j 个分量。

③ 计算主成分贡献率及累计贡献率 主成分i z 的贡献率为),,2,1(1p i pk ki=∑=λλ累计贡献率为),,2,1(11p i pk kik k=∑∑==λλ一般取累计贡献率达85—95%的特征值m λλλ,,,21 所对应的第一、第二,…,第m (m ≤p )个主成分。

主成份分析的MATLAB实现案例

主成份分析的MATLAB实现案例

%--------------------------------------------------------------------------% 从相关系数矩阵出发进行主成分分析aaaa%--------------------------------------------------------------------------%***************************定义相关系数矩阵PHO***************************** PHO = [1 0.79 0.36 0.76 0.25 0.510.79 1 0.31 0.55 0.17 0.350.36 0.31 1 0.35 0.64 0.580.76 0.55 0.35 1 0.16 0.380.25 0.17 0.64 0.16 1 0.630.51 0.35 0.58 0.38 0.63 1];%******************调用pcacov函数根据相关系数矩阵作主成分分析***************** % 返回主成分表达式的系数矩阵COEFF,返回相关系数矩阵的特征值向量latent和主成分贡献率向量explained[COEFF,latent,explained] = pcacov(PHO)% 为了更加直观,以元胞数组形式显示结果result1(1,:) = {'特征值', '差值', '贡献率', '累积贡献率'};result1(2:7,1) = num2cell(latent);result1(2:6,2) = num2cell(-diff(latent));result1(2:7,3:4) = num2cell([explained, cumsum(explained)])% 以元胞数组形式显示主成分表达式s = {'标准化变量';'x1:身高';'x2:坐高';'x3:胸围';'x4:手臂长';'x5:肋围';'x6:腰围'};result2(:,1) = s ;result2(1, 2:4) = {'Prin1', 'Prin2', 'Prin3'};result2(2:7, 2:4) = num2cell(COEFF(:,1:3))%--------------------------------------------------------------------------% 读取examp11_02.xls中数据,进行主成分分析%--------------------------------------------------------------------------%**************************读取数据,并进行标准化变换************************ [X,textdata] = xlsread('examp11_02.xls'); %从Excel文件中读取数据XZ = zscore(X); %数据标准化%**********************************主成分分析*******************************% 调用princomp函数根据标准化后原始样本观测数据作主成分分析,返回主成分表达式的系数矩阵COEFF,% 主成分得分数据SCORE,样本相关系数矩阵的特征值向量latent和每个观测的霍特林T2统计量[COEFF,SCORE,latent,tsquare] = princomp(XZ)% 为了直观,定义元胞数组result1,用来存放特征值、贡献率和累积贡献率等数据% 这样做能以元胞数组形式显示result1的结果explained = 100*latent/sum(latent); %计算贡献率[m, n] = size(X); %求X的行数和列数result1 = cell(n+1, 4); %定义一个n+1行,4列的元胞数组result1(1,:) = {'特征值', '差值', '贡献率', '累积贡献率'};result1(2:end,1) = num2cell(latent); %存放特征值result1(2:end-1,2) = num2cell(-diff(latent)); %存放特征值之间的差值result1(2:end,3:4) = num2cell([explained, cumsum(explained)]) %存放(累积)贡献率% 为了直观,定义元胞数组result2,用来存放前2个主成分表达式的系数数据% 这样做能以元胞数组形式显示result2的结果varname = textdata(3,2:end)'; % 提取变量名数据result2 = cell(n+1, 3); % 定义一个n+1行,3列的元胞数组result2(1,:) = {'标准化变量', '特征向量t1', '特征向量t2'}; % result2的第一行result2(2:end, 1) = varname; % result2的第一列result2(2:end, 2:end) = num2cell(COEFF(:,1:2)) % 存放前2个主成分表达式的系数数据% 为了直观,定义元胞数组result3,用来存放每一个地区总的消费性支出,以及前2个主成分的得分数据% 这样做能以元胞数组形式显示result3的结果cityname = textdata(4:end,1); % 提取地区名称数据sumXZ = sum(XZ,2); %每一个地区总的消费性支出[s1, id] = sortrows(SCORE,1); % 将主成分得分数据按第一主成分得分从小到大排序result3 = cell(m+1, 4); %定义一个m+1行,3列的元胞数组result3(1,:) = {'地区', '总支出', '第一主成分得分y1', '第二主成分得分y2'};result3(2:end, 1) = cityname(id); % result3的第一列,即排序后地区名% 存放排序后每一个地区总的消费性支出,以及前2个主成分的得分数据result3(2:end, 2:end) = num2cell([sumXZ(id), s1(:,1:2)])% 为了直观,定义元胞数组result4,用来存放前2个主成分的得分数据,以及(衣着+医疗)-(食品+其他)% 这样做能以元胞数组形式显示result4的结果%计算(衣着+医疗)-(食品+其他),即衣着和医疗的总支出减去食品和其他商品的总支出cloth = sum(XZ(:,[2,7]),2) - sum(XZ(:,[1,8]),2);[s2, id] = sortrows(SCORE,2); % 将主成分得分数据按第一主成分得分从小到大排序result4 = cell(m+1, 4); %定义一个m+1行,3列的元胞数组result4(1,:) = {'地区','第一主成分得分y1','第二主成分得分y2' ,'(衣+医)-(食+其他)'};result4(2:end, 1) = cityname(id); % result4的第一列,即排序后地区名% 存放排序后前2个主成分的得分数据,以及(衣着+医疗)-(食品+其他)的数据result4(2:end, 2:end) = num2cell([s2(:,1:2), cloth(id)])%***************************前两个主成分得分散点图*************************** plot(SCORE(:,1),SCORE(:,2),'ko'); %绘制两个主成分得分的散点图,散点为黑色圆圈xlabel('第一主成分得分'); %为X轴加标签ylabel('第二主成分得分'); %为Y轴加标签gname(cityname); %交互式标注每个地区的名称%**********************根据霍特林T2统计量寻找极端数据************************ % 将tsquare从小到大进行排序,并与地区名称一起显示result5 = sortrows([cityname, num2cell(tsquare)],2); %转为元胞数组,并按第二列排序[{'地区', '霍特林T^2统计量'}; result5]%**************************调用pcares函数重建观测数据************************ % 通过循环计算E1(m)和E2(m)for i = 1 : 8residuals = pcares(X, i); % 返回残差Rate = residuals./X; %计算相对误差E1(i) = sqrt(mean(residuals(:).^2)); %计算残差的均方根E2(i) = sqrt(mean(Rate(:).^2)); %计算相对误差的均方根endE1 %查看残差的均方根E2 %查看相对误差的均方根。

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

利用Matlab 编程实现主成分分析1.概述Matlab 语言是当今国际上科学界 (尤其是自动控制领域) 最具影响力、也是最有活力的软件。

它起源于矩阵运算,并已经发展成一种高度集成的计算机语言。

它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、与其他程序和语言的便捷接口的功能。

Matlab 语言在各国高校与研究单位起着重大的作用。

主成分分析是把原来多个变量划为少数几个综合指标的一种统计分析方法,从数学角度来看,这是一种降维处理技术。

1.1主成分分析计算步骤① 计算相关系数矩阵⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡=pp p p p p r r r r r r r r r R 212222111211(1)在(3.5.3)式中,r ij (i ,j=1,2,…,p )为原变量的xi 与xj 之间的相关系数,其计算公式为∑∑∑===----=nk nk j kji kink j kj i kiij x xx xx x x xr 11221)()())(( (2)因为R 是实对称矩阵(即r ij =r ji ),所以只需计算上三角元素或下三角元素即可。

② 计算特征值与特征向量首先解特征方程0=-R I λ,通常用雅可比法(Jacobi )求出特征值),,2,1(p i i =λ,并使其按大小顺序排列,即0,21≥≥≥≥pλλλ ;然后分别求出对应于特征值i λ的特征向量),,2,1(p i e i =。

这里要求i e =1,即112=∑=pj ij e ,其中ij e 表示向量i e 的第j 个分量。

③ 计算主成分贡献率及累计贡献率 主成分i z 的贡献率为),,2,1(1p i pk ki=∑=λλ累计贡献率为),,2,1(11p i pk kik k=∑∑==λλ一般取累计贡献率达85—95%的特征值m λλλ,,,21 所对应的第一、第二,…,第m (m ≤p )个主成分。

④ 计算主成分载荷 其计算公式为),,2,1,(),(p j i e x z p l ij i j i ij ===λ (3)得到各主成分的载荷以后,还可以按照(3.5.2)式进一步计算,得到各主成分的得分⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=nm n n m m z z z z z z z z z Z 212222111211 (4)2.程序结构及函数作用在软件Matlab 中实现主成分分析可以采取两种方式实现:一是通过编程来实现;二是直接调用Matlab 种自带程序实现。

下面主要主要介绍利用Matlab 的矩阵计算功能编程实现主成分分析。

2.1程序结构2.2函数作用Cwstd.m ——用总和标准化法标准化矩阵Cwfac.m ——计算相关系数矩阵;计算特征值和特征向量;对主成分进行排序;计算各特征值贡献率;挑选主成分(累计贡献率大于85%),输出主成分个数;计算主成分载荷Cwscore.m——计算各主成分得分、综合得分并排序Cwprint.m——读入数据文件;调用以上三个函数并输出结果3.源程序3.1 cwstd.m总和标准化法标准化矩阵%cwstd.m,用总和标准化法标准化矩阵function std=cwstd(vector)cwsum=sum(vector,1); %对列求和[a,b]=size(vector); %矩阵大小,a为行数,b为列数for i=1:afor j=1:bstd(i,j)= vector(i,j)/cwsum(j);endend3.2 cwfac.m计算相关系数矩阵%cwfac.mfunction result=cwfac(vector);fprintf('相关系数矩阵:\n')std=CORRCOEF(vector) %计算相关系数矩阵fprintf('特征向量(vec)及特征值(val):\n')[vec,val]=eig(std) %求特征值(val)及特征向量(vec)newval=diag(val) ;[y,i]=sort(newval) ; %对特征根进行排序,y为排序结果,i为索引fprintf('特征根排序:\n')for z=1:length(y)newy(z)=y(length(y)+1-z);endfprintf('%g\n',newy)rate=y/sum(y);fprintf('\n贡献率:\n')newrate=newy/sum(newy)sumrate=0;newi=[];for k=length(y):-1:1sumrate=sumrate+rate(k);newi(length(y)+1-k)=i(k);if sumrate>0.85 break;endend %记下累积贡献率大85%的特征值的序号放入newi中fprintf('主成分数:%g\n\n',length(newi));fprintf('主成分载荷:\n')for p=1:length(newi)for q=1:length(y)result(q,p)=sqrt(newval(newi(p)))*vec(q,newi(p));endend %计算载荷disp(result)3.3 cwscore.m%cwscore.m,计算得分function score=cwscore(vector1,vector2);sco=vector1*vector2;csum=sum(sco,2);[newcsum,i]=sort(-1*csum);[newi,j]=sort(i);fprintf('计算得分:\n')score=[sco,csum,j]%得分矩阵:sco为各主成分得分;csum为综合得分;j为排序结果3.4 cwprint.m%cwprint.mfunction print=cwprint(filename,a,b);%filename为文本文件文件名,a为矩阵行数(样本数),b为矩阵列数(变量指标数) fid=fopen(filename,'r')vector=fscanf(fid,'%g',[a b]);fprintf('标准化结果如下:\n')v1=cwstd(vector)result=cwfac(v1);cwscore(v1,result);4.程序测试4.1原始数据中国大陆35个大城市某年的10项社会经济统计指标数据见下表。

4.2运行结果>> cwprint('cwbook.txt',35,10)fid =6数据标准化结果如下:v1 =0.0581 0.0356 0.0435 0.0680 0.0557 0.1112 0.1194 0.1184 0.1083 0.1392 0.0423 0.0346 0.0354 0.0770 0.0089 0.0642 0.0483 0.0499 0.0534 0.0544 0.0407 0.0139 0.0688 0.0234 0.0080 0.0047 0.0151 0.0314 0.0252 0.0183 0.0139 0.0391 0.0056 0.0093 0.0053 0.0290 0.0087 0.0174 0.0234 0.0158 0.0097 0.0263 0.0086 0.0028 0.0064 0.0064 0.0045 0.0062 0.0111 0.0075 0.0315 0.0375 0.0305 0.0198 0.0213 0.0376 0.0243 0.0398 0.0357 0.0278 0.0253 0.0295 0.0443 0.0286 0.0295 0.0468 0.0304 0.0334 0.0248 0.0233 0.0321 0.0242 0.0437 0.0203 0.0132 0.0233 0.0153 0.0212 0.0270 0.0213 0.0431 0.0276 0.0628 0.0142 0.0184 0.0184 0.0206 0.0285 0.0455 0.0316 0.0610 0.0440 0.0488 0.1853 0.0176 0.1086 0.1848 0.1148 0.0888 0.1352 0.0250 0.0318 0.0233 0.0444 0.0391 0.0273 0.0284 0.0251 0.0300 0.0327 0.0286 0.0212 0.0334 0.0408 0.0490 0.0285 0.0192 0.0328 0.0255 0.0285 0.0250 0.0152 0.0337 0.0361 0.0609 0.0251 0.0215 0.0232 0.0164 0.0199 0.0200 0.0190 0.0148 0.0085 0.0134 0.0037 0.0100 0.0072 0.0125 0.00890.0271 0.0163 0.0508 0.0223 0.0243 0.0175 0.0200 0.0222 0.0183 0.01640.0060 0.0290 0.0079 0.0195 0.0102 0.0063 0.0179 0.0093 0.0124 0.01590.0197 0.0237 0.0162 0.0078 0.0101 0.0078 0.0072 0.0117 0.0164 0.01160.0259 0.0243 0.0350 0.0214 0.0162 0.0287 0.0197 0.0182 0.0220 0.01820.0327 0.0220 0.0562 0.0391 0.0367 0.0416 0.0282 0.0220 0.0273 0.02320.0286 0.0204 0.0160 0.0180 0.0286 0.0165 0.0166 0.0227 0.0223 0.01680.0344 0.0349 0.0286 0.0255 0.0268 0.0377 0.0259 0.0254 0.0393 0.03170.0271 0.0185 0.0270 0.0105 0.0239 0.0140 0.0139 0.0153 0.0183 0.01440.0318 0.0370 0.0377 0.0793 0.0603 0.0582 0.0754 0.0901 0.0482 0.07350.0056 0.0472 0.0071 0.0692 0.0240 0.0104 0.0791 0.0421 0.0240 0.04560.0133 0.0242 0.0170 0.0039 0.0141 0.0080 0.0064 0.0097 0.0119 0.00900.0025 0.0497 0.0011 0.0024 0.0146 0.0057 0.0049 0.0072 0.0050 0.00480.1428 0.0123 0.0983 0.0292 0.1437 0.0613 0.0385 0.0402 0.0590 0.03870.0466 0.0199 0.0456 0.0200 0.1100 0.0479 0.0240 0.0331 0.0350 0.02900.0149 0.0271 0.0085 0.0076 0.0430 0.0101 0.0085 0.0079 0.0146 0.01010.0220 0.0230 0.0187 0.0123 0.0154 0.0294 0.0224 0.0182 0.0232 0.02030.0313 0.0244 0.0174 0.0125 0.0283 0.0238 0.0175 0.0259 0.0300 0.02130.0134 0.0324 0.0061 0.0100 0.0050 0.0116 0.0073 0.0117 0.0173 0.01330.0062 0.0311 0.0016 0.0024 0.0048 0.0036 0.0021 0.0038 0.0072 0.00530.0044 0.0340 0.0040 0.0022 0.0058 0.0029 0.0032 0.0036 0.0063 0.00430.0074 0.0491 0.0019 0.0063 0.0073 0.0221 0.0109 0.0105 0.0146 0.0125相关系数矩阵:std =1.0000 -0.3444 0.8425 0.3603 0.7390 0.6215 0.4039 0.4967 0.6761 0.4689 -0.3444 1.0000 -0.4750 0.3096 -0.3539 0.1971 0.3571 0.2600 0.1570 0.3090 0.8425 -0.4750 1.0000 0.3358 0.5891 0.5056 0.3236 0.4456 0.5575 0.3742 0.3603 0.3096 0.3358 1.0000 0.1507 0.7664 0.9412 0.8480 0.7320 0.8614 0.7390 -0.3539 0.5891 0.1507 1.0000 0.4294 0.1971 0.3182 0.3893 0.2595 0.6215 0.1971 0.5056 0.7664 0.4294 1.0000 0.8316 0.8966 0.9302 0.9027 0.4039 0.3571 0.3236 0.9412 0.1971 0.8316 1.0000 0.9233 0.8376 0.9527 0.4967 0.2600 0.4456 0.8480 0.3182 0.8966 0.9233 1.0000 0.9201 0.9731 0.6761 0.1570 0.5575 0.7320 0.3893 0.9302 0.8376 0.9201 1.0000 0.9396 0.4689 0.3090 0.3742 0.8614 0.2595 0.9027 0.9527 0.9731 0.9396 1.0000特征向量(vec):vec =-0.1367 0.2282 -0.2628 0.1939 0.6371 -0.2163 0.3176 -0.1312 -0.4191 0.2758 -0.0329 -0.0217 0.0009 0.0446 -0.1447 -0.4437 0.4058 -0.55620.5487 0.0593-0.0522 -0.0280 0.2040 -0.0492 -0.5472 -0.4225 0.3440 0.3188 -0.4438 0.2401 0.0067 -0.4176 -0.2856 -0.2389 0.1926 -0.4915 -0.4189 0.2726 0.2065 0.3403 0.0404 0.1408 0.0896 0.0380 -0.1969 -0.0437 -0.4888 -0.6789 -0.4405 0.1861 -0.0343 0.2360 0.0640 -0.8294 0.0377 0.2662 0.1356 -0.1290 0.0278 0.3782 0.2981 0.4739 0.5685 0.2358 0.1465 -0.1502 -0.2631 0.1245 0.2152 0.3644 0.1567 0.3464 -0.6485 0.2489 -0.4043 0.2058 -0.0704 0.0462 0.1214 0.3812 0.4879 -0.5707 0.1217 0.1761 0.0987 0.3550 0.3280 -0.0139 0.0071 0.3832 -0.7894 -0.1628 0.1925 0.2510 -0.0422 0.2694 0.0396 0.0456 0.1668 0.3799特征值(val)val =0.0039 0 0 0 0 0 0 0 0 00 0.0240 0 0 0 0 0 0 0 00 0 0.0307 0 0 0 0 0 0 00 0 0 0.0991 0 0 0 0 0 00 0 0 0 0.1232 0 0 0 0 00 0 0 0 0 0.2566 0 0 0 00 0 0 0 0 0 0.3207 0 0 00 0 0 0 0 0 0 0.5300 0 00 0 0 0 0 0 0 0 2.3514 00 0 0 0 0 0 0 0 0 6.2602特征根排序:6.260222.351380.5300470.3206990.2566390.1232410.09909150.03070880.02403550.00393387各主成分贡献率:newrate =0.6260 0.2351 0.0530 0.0321 0.0257 0.0123 0.0099 0.0031 0.0024 0.0004第一、二主成分的载荷:0.690 1 -0.64270.148 3 0.84140.600 7 -0.68050.851 5 0.31670.465 6 -0.67540.946 3 0.04260.911 7 0.32990.953 7 0.18620.958 9 0.01090.950 6 0.2558第一、二、三、四主成分的得分:score =0.718 5 0.049 9 0.768 4 2.00000.380 6 0.038 6 0.419 2 4.00000.184 8 -0.043 3 0.141 4 21.00000.118 6 0.031 1 0.149 7 20.00000.054 9 0.011 5 0.066 4 33.00000.228 8 0.007 0 0.235 8 7.000 00.2364 -0.0081 0.2283 10.00000.1778 -0.0167 0.1611 16.00000.2292 -0.0337 0.1955 14.00000.8382 0.1339 0.9721 1.00000.2276 0.0064 0.2340 8.00000.2279 -0.0222 0.2056 12.00000.1989 -0.0382 0.1607 18.00000.0789 -0.0061 0.0728 32.00000.1711 -0.0317 0.1394 23.00000.0926 0.0266 0.1192 25.00000.0900 -0.0000 0.0899 28.00000.1692 -0.0082 0.1610 17.00000.2441 -0.0318 0.2124 11.00000.1507 -0.0108 0.1399 22.00000.2316 0.0012 0.2328 9.00000.1294 -0.0211 0.1083 27.00000.4716 0.0328 0.5045 3.00000.2737 0.0834 0.3570 5.00000.0754 -0.0013 0.0741 31.00000.0448 0.0349 0.0797 30.00000.4759 -0.2028 0.2731 6.00000.2907 -0.0883 0.2024 13.00000.0944 -0.0118 0.0826 29.00000.1546 0.0035 0.1581 19.0000 0.1718 -0.0092 0.1626 15.0000 0.0865 0.0230 0.1095 26.0000 0.0349 0.0216 0.0566 35.0000 0.0343 0.0228 0.0572 34.0000 0.0889 0.0422 0.1310 24.0000。

相关文档
最新文档