1、 主成分分析方法 主成分分析的基本原理 主成分分析的计算步骤 主成分分析方法应用实例 主成分分析 ( Principal Components Analysis) 是由Hotelling于1933年首先提出的, 它是利用降维的思想,把多指标转化 为少数几个综合指标的多元统计分析 方法。 从数学角度来看,这是一种降维处理 技术。主成分分析的目的与功能 n在多变量分析中,分析者所面临的最大难题是解决众多变量之间的关系问题。进行数据降维可以用尽可能少的新指标取代原来较多的指标变量,并能包含原来指标变量所包含的大部分信息 。n解决多元回归分析中的多重共线性问题。 n综合评价中,人们总是尽可能多地选取评
2、价指标,而这些评价指标之间往往相互重叠,信息冗余是不可避免的。主成分分析则可以把这众多指标所蕴含的信息压缩到少数几个主成分指标,然后给出这几个主成分指标的权重,综合到一个评价指标中。 主成分的主要功能 n数据降维(Dimension Reduction)n变量筛选(Variables Screening)一、数据处理 采集m维随机向量x=(x1,x2,xm)T的n个样品xi=(xi1,xi2,xim)T, i=1,2, ,n, nm,构造样本阵X x1T x11 x12 x1m x2T x21 x22 x2m X= = xnT xn1 xn2 xnm 1.对样本阵X中的元进行如下变换 x ij
3、 , 对正指标 Y ij = - x ij, 对逆指标 得 Y= Y ij np 2 2 对Y中元进行如下标准化变换 ijjjyyijs1,2, ;1,2,in jm其中得标准化矩阵Z:2211,1nnijijjiijjyyyysnnZ= z1T z11 z12 z1m z2T = z21 z22 z2m znT zn1 zn2 znm一、主成分分析的基本原理 n假定有n个样本,每个样本共有m个变量,构成一个nm阶的数据矩阵(标准化后的数据)111212122212mmnnnmxxxxxxXxxx(3.5.1) n 当m较大时,在m维空间中考察问题比较麻烦。为了克服这一困难,就需要进行降维处理
4、,即用较少的几个综合指标代替原来较多的变量指标,而且使这些较少的综合指标既能尽量多地反映原来较多变量指标所反映的信息,同时它们之间又是彼此独立的。定义:记x1,x2,xm为原变量指标,F1,F2,Fp(pm)为新变量指标111 11221221 122221 122mmmmppppmmFe xe xe xFe xe xexFe xexex(3.5.2) n系数eij的确定原则: Fi与Fj(ij;i,j=1,2,p)相互无关; F1是x1,x2,xm的一切线性组合中方差最大者,F2是与F1不相关的x1,x2,xm的所有线性组合中方差最大者; Fp是与F1,F2,Fp1都不相关的x1,x2,xm
5、, 的所有线性组合中方差最大者。 则新变量指标F1,F2,Fp分别称为原变量指标x1,x2,xm的第一,第二,第p主成分。 从以上的分析可以看出,主成分分析的实质就是确定原来变量xj(j=1,2 ,m)在诸主成分Fi(i=1,2,p)上的权重 eij( i=1,2,p; j=1,2 ,m)。 从数学上容易知道,从数学上可以证明,它们分别是的相关系数矩阵的p个较大的特征值所对应的单位化特征向量。 二、计算步骤 (一)计算相关系数矩阵一)计算相关系数矩阵 rij(i,j=1,2,m)为原变量xi与xj的相关系数, rij=rji,其计算公式为:111212122212mmmmmmrrrrrrRrr
6、r(3.5.3) nknkjkjikinkjkjikiijxxxxxxxxr11221)()()((3.5.4) (二)计算特征值与特征向量:(二)计算特征值与特征向量: 解特征方程,常用雅可比法(Jacobi)求出特征值,并使其按大小顺序排列 ; 0RI12,0m 分别求出对应于特征值的特征向量 ,要求 =1,即,其中表示向量 的第j个分量。i(1,2,)ie imie211mijjeijeie 计算主成分贡献率及累计贡献率 贡献率:1(1, 2,)imkkim累计贡献率: 11(1,2,)ikkmkkim一般取累计贡献率达8595%的特征值所对应的第一、第二、第p(pm)个主成分。 12,
7、p (三)确定主成分12(,)Tiiimeee11221iiiimmFe Xe Xe Xip其中为第i个特征值所对应的特征向量2.计算主成分载荷计算主成分载荷1.主成分表达式主成分表达式:( ,) (1,2, ,1,2,)ijijiijlp F xeip jm表示主成分与对应变量的相关系数表示主成分与对应变量的相关系数(四)排序问题:(四)排序问题:11221iiiimmYe Xe Xe Xip1212111ppmmmkkkkkkYYYY2.综合得分:选取综合评价函数为综合得分:选取综合评价函数为1.主成分得分主成分得分三、主成分分析实例1 下表是10名初中男学生的身高(cm),胸围(cm),
8、体重(kg)的数据,试进行主成分分析。身高身高x1胸围胸围x2体重体重x3149.569.538.5162.577.055.5162.778.550.8162.287.565.5156.574.549.0156.174.545.5172.076.551.0173.281.559.5159.574.543.5157.779.053.5Matlab程序n%cwfac.mnfunction result=cwfac(vector);nfprintf(相关系数矩阵:n)nstd=corrcoef(vector) %计算相关系数矩阵nfprintf(特征向量(vec)及特征值(val):n)nvec,v
9、al=eig(std) %求特征值(val)及特征向量(vec)nnewval=diag(val) ;ny,i=sort(newval) ; %对特征根进行排序,y为排序结果,i为索引nfprintf(特征根排序:n)nfor z=1:length(y)n newy(z)=y(length(y)+1-z);nendnfprintf(%gn,newy)nrate=y/sum(y);nfprintf(n贡献率:n)nnewrate=newy/sum(newy)Matlab程序nsumrate=0;nnewi=;nfor k=length(y):-1:1n sumrate=sumrate+rate(
10、k);n newi(length(y)+1-k)=i(k);n if sumrate0.85 break;n end nend %记下累积贡献率大85%的特征值的序号放入newi中nfprintf(主成分数:%gnn,length(newi);nfprintf(主成分载荷:n)nfor p=1:length(newi)n for q=1:length(y)n result(q,p)=sqrt(newval(newi(p)*vec(q,newi(p);n endnend %计算载荷ndisp(result)主成分分析实例主成分分析实例 2n表1是某市工业部门13个行业的8项重要经济指标的数据,这
11、8项经济指标分别是:X1:年末固定资产净值,单位:万元;X2:职工人数据,单位:人;X3:工业总产值,单位:万元;X4:全员劳动生产率,单位:元/人年;X5:百元固定资产原值实现产值,单位:元;X6:资金利税率,单位:%;X7:标准燃料消费量,单位:吨;X8:能源利用效果,单位:万元/吨。利用Matlab求解1.0000 0.54500.60920.5450 1.00000.95150.6092 0.9515 1.0000Rn相关系数矩阵为n特征值为 2.42 0.53 0.045n对应的特征向量为n 0.4983 0.8638 -0.0747n 0.6063 -0.4088 -0.6822n
12、 0.6198 -0.2947 0.7274贡献率为 0.8069 0.1781 0.0150 前两个的累计贡献率为98.5%选取两个主成分11230.560.420.71yxxx21230.830.330.45yxxx 1y是反映学生身材魁梧与否的综合指标是反映学生体形特征的综合指标。 2y表1是某市工业部门13个行业的8项重要经济指标的数据,这8项经济指标分别是:X1:年末固定资产净值,单位:万元;X2:职工人数据,单位:人;X3:工业总产值,单位:万元;X4:全员劳动生产率,单位:元/人年;X5:百元固定资产原值实现产值,单位:元;X6:资金利税率,单位:%;X7:标准燃料消费量,单位:
13、吨;X8:能源利用效果,单位:万元/吨。表表1 某市工业部门某市工业部门13个行业个行业8项指标项指标 我们要考虑的是:如何从这些经济指标出发,对八个指标进行适当的缩减,便于我们对某市经济状态做定性分析?0.002442000000000.032184000000000.086598000000000.30408000000000.64212000000000.93022000000002.8974000000003.1049-0.245-0.75762-0.065854-0.184220.0453030.104190.295990.47665-0.527110.51841-0.0484510
14、.30545-0.174430.162980.277890.472810.780540.174040.0990480.0174750.058670.156260.377950.42385-0.220130.249430.28786-0.539410.51609-0.00854430.45141-0.21289-0.030623-0.232970.582290.4499-0.199420.321130.33094-0.388460.042355-0.056436-0.713570.316840.279260.145140.40274-0.35243-0.04116-0.0528420.19359
15、0.41820.758170.14046-0.377410.214830.0032996-0.0671110.122170.32220.071855-0.891160.272740.055034表表2 特征根和累计贡献率特征根和累计贡献率表表3 特征向量特征向量*21234*56780.2960.2780.3780.4510.3310.4030.3770.273YXXXXXXXX*11234*56780.4770.4730.4240.2130.3880.3520.2150.055YXXXXXXXX*31234*56780.1040.1630.1560.0090.3210.1450.1400.8
16、91YXXXXXXXX载荷 成份123年末固定资产净值.840.504.100职工人数.833.473.157工业总产值.747.643.151全员劳动生产率-.375.768-.008百元固定资产原值实现产值-.684.563.310资金利税率-.621.686.140标准燃料消费量.379-.642.135能源利用效果.097.464-.860表表4 各行业主成分得分及排序各行业主成分得分及排序从上表可以看出,机器行业在该地区的综合评价排在第一,原始数据也反映出机器行业存在明显的规模优势,另外从前两个主成分得分上看,该行业也排在第一位,同样存在效益优势;而排在最后三位的分别是皮革行业、电力行业和煤炭行业。