实例说明利用Excel进行主成分分析分解.docx

上传人:b****1 文档编号:2396345 上传时间:2022-10-29 格式:DOCX 页数:26 大小:693.43KB
下载 相关 举报
实例说明利用Excel进行主成分分析分解.docx_第1页
第1页 / 共26页
实例说明利用Excel进行主成分分析分解.docx_第2页
第2页 / 共26页
实例说明利用Excel进行主成分分析分解.docx_第3页
第3页 / 共26页
实例说明利用Excel进行主成分分析分解.docx_第4页
第4页 / 共26页
实例说明利用Excel进行主成分分析分解.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

实例说明利用Excel进行主成分分析分解.docx

《实例说明利用Excel进行主成分分析分解.docx》由会员分享,可在线阅读,更多相关《实例说明利用Excel进行主成分分析分解.docx(26页珍藏版)》请在冰豆网上搜索。

实例说明利用Excel进行主成分分析分解.docx

实例说明利用Excel进行主成分分析分解

方法:

1利用Excel2000进行主成分分析

第一步,录入数据,并对进行标准化。

【例】一组古生物腕足动物贝壳标本的两个变量:

长度和宽度。

原始数据和标准化数据及其均值、方差1图)(取自张超、杨秉庚《计量地理学基础》

计算的详细过程如下:

⑴将原始数据绘成散点图(图2)。

主持分分析原则上要求数据具有线性相关趋势—

—如果数据之间不相关(即正交),则没有必要进行主成分分析,因为主成分分析的目的

就是用正交的变量代替原来非正交的变量;如果原始数据之间为非线性关系,则有必要对

1

可见,原始数据具有线性相关趋势,且测定系2数据进行线性转换,否则效果不佳。

从图

2。

RR=0.7056=0.4979,相应地,相关系数数

标准化的数学公式为对数据进行标准化⑵

xx?

jij*?

xij?

j这里假定按列标准化,式中nn12?

?

,)Var(x?

x?

?

x)x(x?

?

ijjijijijijn1i?

1i?

个变量)、第列(即第分别为第列数据的均值和标准差,为第行(即第个样本)xjijjiij*为样本数目。

的标准化数据,的数据,为相应于25nx?

xijij

2.3174=0.7686x+原始数据的散点图y

20.4979R=25

2015度宽10

50

2520长度151005

原始数据的散点图图2

标准化数据的散点图y=0.7056x+2E-16

2=R0.49793.0000002.0000001.000000度宽0.000000

1.0000002.0000000.-1.000003.000000-2.00000-1.000000000

-2.000000

长度

标准化数据的散点图3图

2

对数据标准化的具体步骤如下:

①求出各列数据的均值,命令为average,语法为:

average(起始单元格:

终止单元格)。

如图1所示,在单元格B27中输入

“”,确定或回车,即得第一列数据的均值;然后抓住单10.88x?

B26)VERAGE(B1:

=A1,便可自动生成第二列数据的均值C27的右下角(光标的十字变细)右拖至元格B27

10.68?

x2中输入所示,在单元格B28varp,语法同均值。

如图1②求各列数据的方差。

命令为

,右拖至”,确定或回车,可得第一列数据的方差“19.4656)?

Var(xARP(B2:

B26)=V1。

生成第二列数据的方差23.0976)?

Var(xC282直接生成标准stdevp求各列数据的标准差。

将方差开方便得标准差。

也可利用命令③

差,语法和操作方法同均值、方差,不赘述。

”,回车可得中输入“=(B2-$B$27)/$B$29所示,在单元格D2④标准化计算。

如图1

的右下角下拖至D2”的标准化数值-1.786045,然后按住单元格第一列第一个数据“3

,就能E2D2的右下角右拖至D26,便会生成第一列数据的全部标准化数值;按照单元格

的右下角下拖至-1.806077,抓住单元格E2生成第二列第一个数据“2”的标准化数据

便会生成第二列数据的全部标准化数值。

E26

可以看出,点列的总体趋势没有变换,两种数据)图3⑤作标准化数据的散点图(

,斜率等于的相关系数与标准化以前完全相同。

但回归模型的截距近似为,即有0?

a0

相关系数,即有Rb?

求相关系数矩阵的方法是:

沿着“工具⑶求标准化数据的相关系数矩阵或协方差矩阵

,确定,弹))”选项框(图4)”(T→“数据分析(D)”的路径打开“分析工具(A

,在“输入区域”的空白栏中输入标准化数据范围,并以5出“相关系数”对话框(图)

为输出区域,具体操作方法类似于回归分析。

确定,即会在输出区域给出相关单元格G1

分析工具选项框图4

3

相关系数对话框图5系数矩阵的下三角即对角线部分,由于系对称矩阵,上三角的数值与下三角相等,故未给

出(图6),可以通过“拷贝——转置——粘帖”的方式补充空白部分。

标准化数据的相关系数和协方差6图

求协方差的方法是在“分析工具”选项框中选择“协方差”(图7),弹出“协方差”

选项框(图8),具体设置与“相关系数”类似,不赘述。

结果见图6,可以看出,对于

标准化数据而言,协方差矩阵与相关系数矩阵完全一样。

因此,二者任取其一即可。

在分析工具选项框中选择“协方差”7图

4

协方差选项框8图

⑷计算特征根。

我们已经得到相关系数矩阵为

?

10.7056?

C?

,?

?

0.70561?

?

而二阶单位矩阵为

?

10?

I?

?

,?

01?

?

?

,我们有于是根据公式0?

C)det(I?

?

0.70561100.7056?

1?

?

?

?

?

0?

0.70560.70561?

01?

1按照行列式化为代数式的规则可得

222?

?

?

0?

?

0.5021?

2?

(?

1)?

0.7056

2时,我们有根据一元二次方程的求根公式,当04ac?

b?

2ac?

4?

b?

b?

?

a2

这便是,据此解得(对于本例,显然,)R0.2944?

?

1?

R?

?

1.70561?

?

?

?

?

2121相关系数矩阵的两个特征根。

⑸求标准正交向量。

将代入矩阵方程,得到0?

C)?

?

(I?

?

100.7056?

0.7056?

?

?

?

?

?

?

?

1?

?

?

?

?

?

?

00.70560.7056?

?

?

?

?

?

?

2?

中,用第一行加第二行,化为在系数矩阵C?

I

0.7056?

0.70560?

?

?

?

?

?

?

?

1?

?

?

?

?

?

0?

00?

?

?

?

?

?

2由此得,令,则有,于是得基础解系1?

?

?

1?

?

?

?

2121

?

?

?

?

10.7071,单位化为?

e?

?

?

?

?

11?

0.70711?

?

?

?

5

?

i()。

1,2i?

单位化的公式为?

e2i?

?

?

212

完全类似,将代入矩阵方程,得到0?

C)?

(I?

?

?

20?

0.7056?

0.7056?

?

?

?

?

?

?

?

1?

?

?

?

?

?

?

00.7056?

0.7056?

?

?

?

?

?

?

2用系数矩阵的第二行减去第一行,化为

0?

0.7056?

0.7056?

?

?

?

?

?

?

?

1?

?

?

?

?

?

0?

00?

?

?

?

?

?

2于是得到,取,则有,因此得基础解系为1?

?

?

?

1?

?

?

?

?

2121,单位化为e?

?

?

0.7071?

1?

?

?

?

?

?

?

22?

0.7071?

?

1?

?

?

这里、便是标准正交向量。

ee21

⑹求对角阵。

首先建立标准正交矩阵P,即有

0.7071?

0.7071e]?

?

e[P?

2?

1?

0.7071?

0.7071?

?

T1T?

,可逆。

根据,即矩阵的该矩阵的一个特殊性质便是转置等于矩阵的CP?

PDP?

P

?

D?

1.7056?

0?

0.7056?

?

0.70710.7071?

?

?

?

?

?

?

?

?

?

?

?

?

?

0.70560.70710.7071?

0.293400.7071?

10.70710?

?

?

?

.70710.7071

?

?

1

下面说明一下利用Excel进行矩阵乘法运算的方法。

矩阵乘法的命令为mmult,语法是

T矩阵的单元格范围,矩阵的单元格范围。

例如,用矩阵与矩阵相乘,PC21mmult()

首先选择一个输出区域如G1:

H2,然后输入“=mmult(A1:

B2,C1:

D2)”,然后按下

“Ctrl+Shift+Enter”键(图9),即可给出

1.2060441.206044

0.20817-0.20817

再用乘得的结果与P阵相乘,便得对角矩阵

1.7056030

0.2943970

如果希望一步到位也不难,选定输出区域如C3:

D4,然后输入

“=mmult(mmult(A1:

B2,C1:

D2),E1:

F2)”(图10),同时按下“Ctrl+Shift+Enter”键,立

即得到结果(图11)。

显然,对角矩阵对角线的数值恰是相关系数矩阵的特征值。

矩阵乘法示例图9

6

矩阵连乘的命令与语法10图

至此,标准化的原始变量x与主成分之间z之间可以表作

?

x0z0.7056?

?

?

?

1?

?

1.7056?

?

?

?

z?

xz?

?

?

11?

x?

?

122x10.2944z0.705601?

?

?

?

?

?

?

?

?

?

?

22显然与之间正交。

zz21

乘法结果:

对角矩阵11图

⑺根据特征根计算累计方差贡献率。

现已求得第一特征根为,第二特征根为1.7056?

?

1,二者之和刚好就是矩阵的维数,即有,这里为变量数2?

?

m?

0.2944?

=2m?

?

?

221目(注意前面的n=25为样本数目)。

比较图6或图10中给出的相关系数矩阵C与图11

中给出的对角矩阵D可以看出,Tr.(C)=1+1=2,Tr.(D)=1.7056+0.2944=2,即有Tr.(C)=

Tr.(D),可见将相关系数亦即协方差矩阵转换为对角矩阵以后,矩阵的迹(trace,即对角

线元素之和)没有改变,这意味着将原始变量化为主成分以后,系统的信息量没有减少。

现在问题是,如果我们只取一个主成分代表原来的两个变量,能反映原始变量的多少信息?

这个问题可以借助相关系数矩阵的特征根来判断。

利用Excel容易算出,第一特征根占特

征根总和即矩阵维数的85.28%(见下表),即有

特征根累计值百分比累计百分比

1.7056031.70560385.28%85.28%

7

100.00%0.294397214.72%

也就是说:

,:

85.28%/2?

/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1