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