主成分分析实施报告matlab程序

合集下载

主成分分析 MATLAB代码

主成分分析 MATLAB代码
T=L(:,1)+L(:,2)+L(:,3)+L(:,4); %计算T统计量
%特征向量图(效果等价于主成分载荷图)
figure(4); %创造第二个图形窗口
e1=-E(:,1);e2=-E(:,2); %提取特征向量并转换符号
Co2=Co1+A(:,2).^2; %提取2个主成分的公因子方差
Co3=Co2+A(:,3).^2; %提取3个主成分的公因子方差
Co4=Co3+A(:,4).^2; %提取4个主成分的公因子方差
Rz=cov(F); %计算协方差矩阵
Rz=corrcoef(F); %计算相关系数矩阵
Rz=corrcoef(Z); %计算相关系数矩阵
%计算非标准化数据协方差矩阵的三种方法
Covz=Z'*Z/(n-1); %计算协方差矩阵
Covz=cov(Z); %计算协方差矩阵
%计算主成分得分相关系数的四种方法
Rz=F'*F/(n-1); %计算相关系数矩阵
grid on %添加网格
%几个用于检验的语句
%计算再生相关系数矩阵
Rp=H*H'; %计算再生相关矩阵
Re=R-Rp; %计算相关矩阵的残差矩阵
%综合得分
S=Z(:,1)+Z(:,2)+Z(:,3)+Z(:,4) %非标准化得分四列加和
S1=F(:,1)*eigv(1)^0.5+F(:,2)*eigv(2)^0.5+F(:,3)*eigv(3)^0.5+F(:,4)*eigv(4)^0.5
%计算T平方统计量(2)
eigv=diag(G); %提取角矩阵的对角线元素

最新主成分分析及matlab实现

最新主成分分析及matlab实现
设有 n 个样品,每个样品观测 p 个指标,将 原始数据写成矩阵
1.将原始数据标准化。这里不妨设上边矩阵已 标准化了。
2.建立变量的相关系数阵:
rij
n
(xki xi )(xkj xj )
k1
n
n
(xki xi )2 (xkj xj )2
k1
k1
3.求R的特征根 及相应的单位特征向量:
主成分分析及matlab实现
问题的提出:
在实际问题研究中,多变量问题是经常 会遇到的。变量太多,无疑会增加分析问题 的难度与复杂性,而且在许多实际问题中, 多个变量之间是具有一定的相关关系的。
因此,人们会很自然地想到,能否在相 关分析的基础上,用较少的新变量代替原来 较多的旧变量,而且使这些较少的新变量尽 可能多地保留原来变量所反映的信息?
1 1 .9 9 9 ,2 0 .9 9 8 ,3 0 .0 0 3
前2个主成分的累计贡献率在99%以上,故取2个主成分( x
* i
表示xi的标准化变量):
Z10.7063x* 10.0435x2 *0.7065x3 *,
Z20.0357x* 10.9990x2 *0.0258x3 *
由主成分回归得到的标准化回归方程为
第一步 将原始数据标准化。 第二步 建立指标之间的相关系数阵R如下
第三步 求R的特征值和特征向量。
从上表看,前3个特征值累计贡献率已达89.564%, 说明前3个主成分基本包含了全部指标具有的信息,我们 取前3个特征值,并计算出相应的特征向量:
因而前三个主成分为: 第一主成分:
第二主成分:
x1
149.3 161.2 171.5 175.5 180.8 190.7 202.1 212.4 226.1 231.9 239.0

主成分分析及MATLAB应用 代码

主成分分析及MATLAB应用 代码

主成分分析类型:一种处理高维数据的方法。

降维思想:在实际问题的研究中,往往会涉及众多有关的变量。

但是,变量太多不但会增加计算的复杂性,而且也会给合理地分析问题和解释问题带来困难。

一般说来,虽然每个变量都提供了一定的信息,但其重要性有所不同,而在很多情况下,变量间有一定的相关性,从而使得这些变量所提供的信息在一定程度上有所重叠。

因而人们希望对这些变量加以“改造”,用为数极少的互补相关的新变量来反映原变量所提供的绝大部分信息,通过对新变量的分析达到解决问题的目的。

一、总体主成分1.1 定义设 X 1,X 2,…,X p 为某实际问题所涉及的 p 个随机变量。

记 X=(X 1,X 2,…,Xp)T ,其协方差矩阵为()[(())(())],T ij p p E X E X X E X σ⨯∑==--它是一个 p 阶非负定矩阵。

设1111112212221122221122Tp p Tp pT pp p p pp p Y l X l X l X l X Y l X l X l X l X Y l X l X l X l X⎧==+++⎪==+++⎪⎨⎪⎪==+++⎩ (1) 则有()(),1,2,...,,(,)(,),1,2,...,.T T i i i i TT T i j ijij Var Y Var l X l l i p Cov Y Y Cov l X l X l l j p ==∑===∑= (2)第 i 个主成分: 一般地,在约束条件1T i i l l =及(,)0,1,2,..., 1.T i k i k Cov Y Y l l k i =∑==-下,求 l i 使 Var(Y i )达到最大,由此 l i 所确定的T i i Y l X =称为 X 1,X 2,…,X p 的第 i 个主成分。

1.2 总体主成分的计算设 ∑是12(,,...,)T p X X X X =的协方差矩阵,∑的特征值及相应的正交单位化特征向量分别为120p λλλ≥≥≥≥及12,,...,,p e e e则 X 的第 i 个主成分为1122,1,2,...,,T i i i i ip p Y e X e X e X e X i p ==+++= (3)此时(),1,2,...,,(,)0,.Ti i i i Ti k i k Var Y e e i p Cov Y Y e e i k λ⎧=∑==⎪⎨=∑=≠⎪⎩ 1.3 总体主成分的性质1.3.1 主成分的协方差矩阵及总方差记 12(,,...,)T p Y Y Y Y = 为主成分向量,则 Y=P T X ,其中12(,,...,)p P e e e =,且12()()(,,...,),T T p Cov Y Cov P X P P Diag λλλ==∑=Λ=由此得主成分的总方差为111()()()()(),p ppTTiii i i i Var Y tr P P tr PP tr Var X λ=====∑=∑=∑=∑∑∑即主成分分析是把 p 个原始变量 X 1,X 2,…,X p 的总方差1()pii Var X =∑分解成 p 个互不相关变量 Y 1,Y 2,…,Y p 的方差之和,即1()pii Var Y =∑而 ()k k Var Y λ=。

主成分分析(PCA)算法介绍及matlab实现案例

主成分分析(PCA)算法介绍及matlab实现案例

主成分分析(PCA)算法介绍及matlab实现案例主成分分析经常被⽤做模型分类时特征的降维,本篇⾸先介绍PCA的步骤,并根据步骤撰写对应的MATLAB代码,最后指明使⽤PCA的步骤。

我们在做分类时,希望提取的特征能够最⼤化将数据分开,如果数据很紧密,模型就⽐较难将其分开,如果数据⽐较离散,那么就⽐较容易分开,换句话说,数据越离散,越容易分开。

那怎么让数据离散呢?离散⼜⽤什么指标衡量呢?统计学的知识告诉我们,数据越离散,⽅差越⼤。

因此,PCA的问题就变为:寻找⼀个坐标轴,使得数据在该坐标轴上⾯离散度最⾼。

也就是寻找⼀个基使得所有数据在这个基上⾯的投影值的⽅差最⼤。

那具体怎么做呢?科学家们已经帮我们做好了,如下步骤:设有m个样本,每个样本有n个特征,组成m⾏n列的矩阵1)将每⼀列特征进⾏均值化处理,特征归⼀化,也称为数据中⼼平移到坐标原点2)求取协⽅差矩阵3)求取协⽅差矩阵的特征值和特征向量4)将特征向量按对应特征值⼤⼩从上到下按⾏排列成矩阵,取前K列组成系数矩阵matlab代码function [coffMatrix,lowData,eigValSort,explained,meanValue] = myPCA(data)%data为row⾏col列矩阵,row为样本数量,col为特征列,每⼀列代表⼀个特征[row , col] = size(data);% 求出每⼀列的均值meanValue = mean(data);% 将每⼀列进⾏均值化处理,特征归⼀化,数据中⼼平移到坐标原点normData = data - repmat(meanValue,[row,1]);%求取协⽅差矩阵covMat = cov(normData);%求取特征值和特征向量[eigVect,eigVal] = eig(covMat);% 将特征向量按对应特征值⼤⼩从上到下按⾏排列成矩阵[sortMat, sortIX] = sort(eigVal,'descend');[B,IX] = sort(sortMat(1,:),'descend');coffMatrix = eigVect(:,IX);% 排序后的特征向量就是新的坐标系lowData = normData * coffMatrix;% 分量得分explained = 100*B/sum(B);%特征值eigValSort = B;%%% [U,S,V] = svd(data);end我们在实际应⽤PCA的时候需要注意保留以下⼏个值。

主成分分析及matlab程序

主成分分析及matlab程序
从数学角度来看,主成分分析是一种降维 处理技术。
举例:
某人要做一件上衣要测量很多尺寸,如身长、 袖长、胸围、腰围、肩宽、肩厚等十几项指标, 但某服装厂要生产一批新型服装绝不可能把尺寸 的型号分得过多 ,而是从多种指标中综合成几 个少数的综合指标,做为分类的型号,利用主成 分分析将十几项指标综合成3项指标,一项是反 映长度的指标,一项是反映胖瘦的指标,一项是 反映特体的指标。
2195.7 1408 422.61 4797 1011.8 119.0
5381.72 2699 1639.8 8250 656.5 114.0
1606.15 1314 382.59 5105 556.0 118.4
364.17 1814 198.35 5340 232.1 113.5
3534.00 1261 822.54 4645 902.3 118.5
111.6 1396.35
116.4 554.97
111.3 64.33
117.0 1431.81
117.2 324.72
118.1 716.65
114.9
5.57
117.0 600.98
116.5 468.79
116.3 105.80
115.3 114.40
116.7 428.76
1.将原始数据标准化。 2.建立指标之间的相关系数阵R如下:
正交化特征向量(通常用Jacobi法求特征向量):
a11
a12
1
=
a21
,
2
=
a22
,
a
p1
a
p
2
a1p
,
p
=
a2
p
,
a

主成分分析matlab代码

主成分分析matlab代码

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%一如既往的x:m*n,n是样本个数,m是维度%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%错误之处望指正,虽然结果与pca函数一样吧function y=myPca(x)%%%%%%%%%%%%%%%%%%%%%求取x的协方差sigma=myCov(x)[V,D]=eig(sigma);%%%%%%%%%%%%%%%%%%%%%特征值排序和找出特征值向量duiJiao=diag(D);[xuLie,pos]=sort(duiJiao,'descend');cumsum(xuLie)/sum(xuLie);temp=cumsum(xuLie)/sum(xuLie);for i=1:length(xuLie)if temp(i)>0.85 %%%%%%%%近似一下,嘿嘿!index=i;ts=temp(i);break;endendnewXuLie=xuLie(1:index)newTezheng=V(:,pos(1:index))%%%%%%%%%%%%%%%%%%%%%求方差%%%%%%%%%%%%%%%%%%%%%下面我要开始对主成分得分了score=[];[m,n]=size(V);for i=1:nfor j=1:length(newXuLie)for k=1:mtemp(k)=newTezheng(k,j)*x(k,i);endtemp2(j)=sum(temp);endscore(:,i)=temp2;endcentered=centerMean(score); %%%%%%%%%%%%%%%%%%%%%%没有近似的temp3=V(:,pos(1:length(duiJiao))); score2=[];for i=1:nfor j=1:length(xuLie)for k=1:mtemp(k)=temp3(k,j)*x(k,i);endtemp2(j)=sum(temp);endscore2(:,i)=temp2;endcentered2=centerMean(score2);mda=newXuLie;y.score=score';y.scoreMean=centered';y.coeff=newTezheng;y.ts=ts;mdaO=xuLie;y.scoreO=score2';y.scoreOM=centered2';y.coeffO=V(:,pos(1:length(duiJiao)));%%%%%%%%%%%%%%%%%%%%%%子函数,求协方差function s=myCov(x)[p,n]=size(x);s=zeros(p,p);for i=1:pfor j=1:pfor k=1:nmeanij=mean(x,2);meani=meanij(i);meanj=meanij(j);xki=x(i,k);xkj=x(j,k);temp(k)=(xki-meani)*(xkj-meanj); ends(i,j)=sum(temp)/(n-1);endend %%%%%%%%%%%%%%%%%%%%%%%子函数,均值化function y=centerMean(x)[m,n]=size(x);A=ones(1,n);B=mean(x,2);y=x-kron(A,B);。

主成分分析报告matlab程序

主成分分析报告matlab程序

主成分分析报告matlab程序主成分分析报告 Matlab 程序在数据分析和处理的领域中,主成分分析(Principal Component Analysis,PCA)是一种常用且强大的工具。

它能够将多个相关变量转换为一组较少的不相关变量,即主成分,同时尽可能多地保留原始数据的信息。

在 Matlab 中,我们可以通过编写程序来实现主成分分析,这为我们的数据处理和理解提供了极大的便利。

主成分分析的基本思想是找到数据中的主要方向或模式。

这些主要方向是通过对数据的协方差矩阵进行特征值分解得到的。

最大的特征值对应的特征向量就是第一主成分的方向,第二大的特征值对应的特征向量就是第二主成分的方向,以此类推。

在 Matlab 中,我们首先需要导入数据。

假设我们的数据存储在一个名为`data` 的矩阵中,每一行代表一个观测值,每一列代表一个变量。

```matlabdata = load('your_data_filetxt');%替换为您的数据文件路径```接下来,我们需要对数据进行中心化处理,即每个变量减去其均值。

```matlabcentered_data = data repmat(mean(data), size(data, 1), 1);```然后,计算协方差矩阵。

```matlabcov_matrix = cov(centered_data);```接下来进行特征值分解。

```matlabV, D = eig(cov_matrix);````V` 是特征向量矩阵,`D` 是对角矩阵,其对角元素是特征值。

我们对特征值进行从大到小的排序,并相应地对特征向量进行重新排列。

```matlablambda, index = sort(diag(D),'descend');sorted_V = V(:, index);```此时,`sorted_V` 的每一列就是一个主成分的方向。

为了计算每个观测值在主成分上的得分,我们可以使用以下代码:```matlabprincipal_components = centered_data sorted_V;```我们还可以计算每个主成分解释的方差比例。

主成分分析matlab程序

主成分分析matlab程序

%数据主成分分析%------------------------------------------------------------------------------------%%数据预处理,便于调用%X=xlsread('d:\fubiao.xlsx',1,'B2:G34');将EXCEL附表中sheet1中的数据读取到matlab中%Y=X';将矩阵X生成转置矩阵Y%xlswrite('d:\fubiao.xlsx',Y,2,'B2:AH7');将矩阵Y的数据存储到EXCEL中sheet2中clcclear allB=xlsread('d:\fubiao.xlsx',2,'B2:AH7');%调用所需数据%%数据标准化处理A=log10(B);%由于数据的数量级相差较大,采用对数归一化a=size(A,1);%得到矩阵A的行数b=size(A,2);%得到矩阵A的列数name=[123456];%将省份按序编号放进矩阵:'山西为1','安徽为2'%'江西为3','河南为4','湖北为5','湖南为6'%%计算相关系数矩阵的特征值和特征向量CM=corrcoef(A);%计算相关系数矩阵[pc,la,tent]=princomp(CM);%主成分分析,pc为特征向量矩阵、la为得分矩阵%tent为特征值矩阵并且所有特征值已按降序排列for j=1:bTS(j,1)=tent(j);%将特征值赋给矩阵DS的第一列endfor i=1:bTS(i,2)=TS(i,1)/sum(TS(:,1));%各个主成分的贡献率TS(i,3)=sum(TS(1:i,1))/sum(TS(:,1));%累计贡献率end%%选择主成分及对应的特征向量T=1;%主成分信息保留率for k=1:bif TS(k,3)>=Tnumber=k;%保留主成分数目break;endendfor j=1:number%提取相对应的特征向量PC(:,j)=pc(:,j);end%%计算各个省份的主成分得分score=A*PC;for k=1:5P(k)=TS(k,2);S=P';endfor i=1:atotalscore(i,1)=sum(score(i,:)*S);totalscore(i,2)=name(i);endresult=[score,totalscore];%将主成分得分与总分放在同一矩阵中result=sortrows(result,-6);%按各省份的总分降序排列%%输出结果disp('特征值及其贡献率、累计贡献率:')TSdisp('信息保留率T对应的主成分数与特征向量')numberPCdisp('主成分得分及排序(按各省份所得总分降序排序,前五列为各主成分得分,第六列为各省份总得分,第七列为各省份编号)')result。

主成分分析报告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 个主成分。

主成分分析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函数作用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 编程实现主成分分析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实现

主成分分析法MATLAB实现

MATLAB结课作业指导老师:张肃班级:信管121姓名:桂亚东学号:201200654118利用Matlab 编程实现主成分分析概述Matlab 语言是当今国际上科学界(尤其是自动控制领域) 最具影响力、也是最有活力的软件。

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

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

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

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

1.1 主成分分析计算步骤①计算相关系数矩阵r 11 r12r1pR r21r22r2pr rp1 p2rpp (1)在(3.5.3)式中,r ij(i,j=1 ,2,⋯,p)为原变量的xi 与xj 之间的相关系数,其计算公式为n(xki xi)( xkjxj)rij nk 1n(xki xi) 2 (x xkjj) 2k 1 k 1 (2)因为R 是实对称矩阵(即r ij=r ji),所以只需计算上三角元素或下三角元素即可。

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

这里要求e i =1 ,即 e 1,ijj 1其中e表示向量ei 的第j 个分量。

ij③计算主成分贡献率及累计贡献率主成分z的贡献率为i..i(i 1,2, , p) pkk 1累计贡献率为ikk1 i p( 1,2 ,, ) pkk 1一般取累计贡献率达85 —95% 的特征值, 2 , ,1 所对应的第一、第m二,⋯,第m (m≤p)个主成分。

④计算主成分载荷其计算公式为l p( z , x ) e (i, j 1,2, , p)ij (3)i j i ij得到各主成分的载荷以后,还可以按照( 3.5.2 )式进一步计算,得到各主成分的得分z 11 z12z1mZ z21z22z2mzn1zn2znm(4)2.函数作用.Cwstd.m ——用总和标准化法标准化矩阵Cwfac.m ——计算相关系数矩阵;计算特征值和特征向量;对主成分进行排序;计算各特征值贡献率;挑选主成分(累计贡献率大于85% ),输出主成分个数;计算主成分载荷Cwscore.m ——计算各主成分得分、综合得分并排序Cwprint.m ——读入数据文件;调用以上三个函数并输出结果1.2源程序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);3.2程序测试4.1 原始数据中国大陆35 个大城市某年的10 项社会经济统计指标数据见下表。

主成分分析实施报告matlab程序

主成分分析实施报告matlab程序

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

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

1程序结构主函数子函数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进行成分分析的实验,并对实验结果进行分析和讨论。

一、数据准备在进行成分分析之前,首先需要准备数据集。

本实验选择了一个包含多个变量的数据集,用于演示Matlab的成分分析功能。

这个数据集包含了一些学生的成绩和其他相关信息,共有N个样本,每个样本有M个变量。

二、数据预处理在进行成分分析之前,需要对数据进行预处理,以便消除噪声和异常值的影响。

常用的数据预处理方法包括数据标准化、缺失值处理和异常值处理等。

在本实验中,我们使用Matlab的数据预处理函数对数据进行标准化处理,以确保各个变量具有相同的尺度。

三、主成分分析主成分分析(PCA)是一种常用的成分分析方法,用于从数据集中提取出最具代表性的成分。

在Matlab中,可以使用pca函数进行主成分分析。

该函数会返回数据的主成分分析结果,包括主成分的系数矩阵、方差贡献率和主成分得分等。

四、因子分析因子分析是一种常用的成分分析方法,用于通过变量之间的相关性来解释数据的结构。

在Matlab中,可以使用factoran函数进行因子分析。

该函数会返回因子分析的结果,包括因子载荷矩阵、公因子方差和特殊因子方差等。

五、独立成分分析独立成分分析(ICA)是一种常用的成分分析方法,用于从混合信号中分离出独立的成分。

在Matlab中,可以使用fastica函数进行独立成分分析。

该函数会返回ICA的结果,包括分离矩阵、估计的混合矩阵和估计的源信号等。

六、实验结果与分析通过对数据集进行主成分分析、因子分析和独立成分分析,我们得到了各个方法的分析结果。

根据主成分的方差贡献率和因子载荷矩阵的解释性,我们可以确定主成分和公因子的个数。

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

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

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

1程序结构主函数子函数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项社会经济统计指标数据见下表。

691.230.406 8 1 8532105 96634348109532357 0964 803744102.63884 447927.090.462 7 2 6638554 18612367207520481 4436 450020172.791 3091511 313.12 0.738 42 06901954 5290986406444854 31850025 971200336.845 605445537.440.534 1 989 19913 0727371426911193664 2995 680472113.811 357861616.050.355 6 1 41473712 0007961788311684449 5937 42596796.901 180947538.410.254 7 1 42823510 6228662221510298501 7235 24635062.15 824 034429.950.318 4 628 7642 51412548931517233 6281 62293147.27 369 577583.130.273 3 2 1522886 55535188517190467 5245 03022069.59 680 607128.990.486 5 333 3745 75112437282570418 7582 10833146.93 657 484424.200.398 8 688 2892 30588136743189167 7142 64046062.08479 ,555557.630.408 5 1 4863026 285882591511775460 6904 12697083.31 756 696702.970.369 3 2 38232011 4920361340817038658 4354 978045103.52961 704615.360.342 4 677 4255 287601104336768387 2525 13533884.66 696 848740.200.586 9 1 2112917 506085979315442604 6585 748055149.21 314766582.470.310 7 1 1463673 09817987065718323 6603 46124469.57 596 986685.000.621 4 1 60073823 34813922007238541 76149920 401811182.813 047594119.850.793 1 299 66220 368295875442741 8479089 51990091.261 890338285.870.406 4 720 4861 14969151303293149 7002 19091845.09 371 80954.380.835 4 44 815 717 46153452356115 1741 62680019.01 198 1383 072.34 0.206 74 1687808 5855255244125124898,9129 090969223.731 6068044.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.13920.0423 0.0346 0.0354 0.0770 0.0089 0.0642 0.0483 0.0499 0.0534 0.05440.0407 0.0139 0.0688 0.0234 0.0080 0.0047 0.0151 0.0314 0.0252 0.01830.0139 0.0391 0.0056 0.0093 0.0053 0.0290 0.0087 0.0174 0.0234 0.01580.0097 0.0263 0.0086 0.0028 0.0064 0.0064 0.0045 0.0062 0.0111 0.00750.0315 0.0375 0.0305 0.0198 0.0213 0.0376 0.0243 0.0398 0.0357 0.02780.0253 0.0295 0.0443 0.0286 0.0295 0.0468 0.0304 0.03340.0248 0.02330.0321 0.0242 0.0437 0.0203 0.0132 0.0233 0.0153 0.0212 0.0270 0.02130.0431 0.0276 0.0628 0.0142 0.0184 0.0184 0.0206 0.0285 0.0455 0.03160.0610 0.0440 0.0488 0.1853 0.0176 0.1086 0.1848 0.1148 0.0888 0.13520.0250 0.0318 0.0233 0.0444 0.0391 0.0273 0.0284 0.0251 0.0300 0.03270.0286 0.0212 0.0334 0.0408 0.0490 0.0285 0.0192 0.0328 0.0255 0.02850.0250 0.0152 0.0337 0.0361 0.0609 0.0251 0.0215 0.0232 0.0164 0.01990.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.01820.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.00790.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.30900.8425 -0.4750 1.0000 0.3358 0.5891 0.5056 0.3236 0.4456 0.5575 0.37420.3603 0.3096 0.3358 1.0000 0.1507 0.7664 0.9412 0.8480 0.7320 0.86140.7390 -0.3539 0.5891 0.1507 1.0000 0.4294 0.1971 0.3182 0.3893 0.25950.6215 0.1971 0.5056 0.7664 0.4294 1.0000 0.8316 0.8966 0.9302 0.90270.4039 0.3571 0.3236 0.9412 0.1971 0.8316 1.0000 0.9233 0.8376 0.95270.4967 0.2600 0.4456 0.8480 0.3182 0.8966 0.9233 1.0000 0.9201 0.97310.6761 0.1570 0.5575 0.7320 0.3893 0.9302 0.8376 0.92011.0000 0.93960.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.12900.0278 0.37820.2981 0.4739 0.5685 0.2358 0.1465 -0.1502 -0.2631 0.12450.2152 0.36440.1567 0.3464 -0.6485 0.2489 -0.4043 0.2058 -0.0704 0.04620.1214 0.38120.4879 -0.5707 0.1217 0.1761 0.0987 0.3550 0.3280 -0.01390.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 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.0000 0.380 6 0.038 6 0.419 2 4.0000 0.184 8 -0.043 3 0.141 4 21.0000 0.118 6 0.031 1 0.149 7 20.0000 0.054 9 0.011 5 0.066 4 33.0000 0.228 8 0.007 0 0.235 8 7.000 0 0.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.0000 0.1989 -0.0382 0.1607 18.0000 0.0789 -0.0061 0.0728 32.0000 0.1711 -0.0317 0.1394 23.0000 0.0926 0.0266 0.1192 25.0000 0.0900 -0.0000 0.0899 28.0000 0.1692 -0.0082 0.1610 17.0000 0.2441 -0.0318 0.2124 11.0000 0.1507 -0.0108 0.1399 22.0000 0.2316 0.0012 0.2328 9.0000 0.1294 -0.0211 0.1083 27.0000 0.4716 0.0328 0.5045 3.0000 0.2737 0.0834 0.3570 5.0000 0.0754 -0.0013 0.0741 31.0000 0.0448 0.0349 0.0797 30.0000 0.4759 -0.2028 0.2731 6.0000 0.2907 -0.0883 0.2024 13.0000 0.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.00000.0343 0.0228 0.0572 34.0000 0.0889 0.0422 0.1310 24.0000。

相关文档
最新文档