文档介绍:1 利用Excel2000进行主成分分析
第一步,录入数据,并对进行标准化。
【例】一组古生物腕足动物贝壳标本的两个变量:长度和宽度。
图1 原始数据和标准化数据及其均值、方差
(取自张超、杨秉庚《计量地理学基础》)
计算的详细过程如下:
⑴将原始数据绘成散点图(图2)。主持分分析原则上要求数据具有线性相关趋势——如果数据之间不相关(即正交),则没有必要进行主成分分析,因为主成分分析的目的就是用正交的变量代替原来非正交的变量;如果原始数据之间为非线性关系,则有必要对数据进行线性转换,否则效果不佳。从图2 可见,原始数据具有线性相关趋势,且测定系数R2=,相应地,相关系数R=。
⑵对数据进行标准化。标准化的数学公式为
这里假定按列标准化,式中
,
分别为第j列数据的均值和标准差,为第i行(即第i个样本)、第j列(即第j个变量)的数据,为相应于的标准化数据,为样本数目。
图2 原始数据的散点图
图3 标准化数据的散点图
对数据标准化的具体步骤如下:①求出各列数据的均值,命令为average,语法为:
average(起始单元格:终止单元格)。如图1所示,在单元格B27中输入“=AVERAGE(B1:B26)”,确定或回车,即得第一列数据的均值;然后抓住单元格B27的右下角(光标的十字变细)右拖至C27,便可自动生成第二列数据的均值。
②求各列数据的方差。命令为varp,语法同均值。如图1所示,在单元格B28中输入“=VARP(B2:B26)”,确定或回车,可得第一列数据的方差,右拖至C28生成第二列数据的方差。
③求各列数据的标准差。将方差开方便得标准差。也可利用命令stdevp直接生成标准差,语法和操作方法同均值、方差,不赘述。
④标准化计算。如图1所示,在单元格D2中输入“=(B2-$B$27)/$B$29”,回车可得第一列第一个数据“3”的标准化数值-,然后按住单元格D2的右下角下拖至D26,便会生成第一列数据的全部标准化数值;按照单元格D2的右下角右拖至E2,就能生成第二列第一个数据“2”的标准化数据-,抓住单元格E2的右下角下拖至E26便会生成第二列数据的全部标准化数值。
⑤作标准化数据的散点图(图3)。可以看出,点列的总体趋势没有变换,两种数据的相关系数与标准化以前完全相同。但回归模型的截距近似为0,即有,斜率等于相关系数,即有。
⑶求标准化数据的相关系数矩阵或协方差矩阵。求相关系数矩阵的方法是:沿着“工具(T)”→“数据分析(D)”的路径打开“分析工具(A)”选项框(图4),确定,弹出“相关系数”对话框(图5),在“输入区域”的空白栏中输入标准化数据范围,并以单元格G1为输出区域,具体操作方法类似于回归分析。确定,即会在输出区域给出相关
图4 分析工具选项框
图5 相关系数对话框
系数矩阵的下三角即对角线部分,由于系对称矩阵,上三角的数值与下三角相等,故未给出(图6),可以通过“拷贝——转置——粘帖”的方式补充空白部分。
图6 标准化数据的相关系数和协方差
求协方差的方法是在“分析工具”选项框中选择“协方差”(图7),弹出“协方差”选项框(图8),具体设置与“相关系数”类似,不赘述。结果见图6,可以看出,对于标准化数据而言,协方差矩阵与相关系数矩阵完全一样。因此,二者任取其一即可。
图7 在分析工具选项框中选择“协方差”
图8 协方差选项框
⑷计算特征根。我们已经得到相关系数矩阵为
,
而二阶单位矩阵为
,
于是根据公式,我们有
按照行列式化为代数式的规则可得
根据一元二次方程的求根公式,当时,我们有
据此解得,(对于本例,显然,)。这便是相关系数矩阵的两个特征根。
⑸求标准正交向量。将代入矩阵方程,得到
在系数矩阵中,用第一行加第二行,化为
由此得,令,则有,于是得基础解系
,单位化为
单位化的公式为()。
完全类似,将代入矩阵方程,得到
用系数矩阵的第二行减去第一行,化为
于是得到,取,则有,因此得基础解系为
,单位化为
这里、便是标准正交向量。
⑹求对角阵。首先建立标准正交矩阵P,即有
该矩阵的一个特殊性质便是,即矩阵的转置等于矩阵的逆。根据,可知
下面说明一下利用Excel进行矩阵乘法运算的方法。矩阵乘法的命令为mmult,语法是mmult (矩阵1的单元格范围,矩阵2的单元格范围)。例如,用矩阵与矩阵C相乘,首先选择一个输出区域如G1:H2,然后输入“=mmult(A1:B2,C1:D2)”,然后按下“Ctrl+Shift+Enter”键(图9),即可给出
-
再用乘得的结果与P