1、一、概述在处理信息时,当两个变 量之间有一定相关关系时,可以解释为这两个变量反映此课题的信息有一定的重叠,例如,高校科研状况评价中的立项课题数与项目经费、经费支出等之间会存在较高的相关性;学生综合评价研究中的专业基础课成绩与专业课成绩、获奖学金次数等之间也会存在较高的相关性。而 变量之间信息的高度重叠和高度相关会 给统计方法的应用带来许多障碍。为了解决这些问题,最简单和最直接的解决方案是削减 变 量的个数,但 这必然又会导致信息丢失和信息不完整等问题的产生。 为此,人 们希望探索一种更 为有效的解决方法,它既能大大减少参与数据建模的变量个数,同 时也不会造成信息的大量 丢失。主成分分析正式 这
2、样一种能够有效降低变量维数,并已得到广泛 应用的分析方法。主成分分析以最少的信息丢失为前提,将众多的原有 变量 综合成较少几个综合指标,通常综合指标(主成分)有以下几个特点:主成分个数远远少于原有变量的个数原有变量综合成少数几个因子之后,因子将可以替代原有 变量参与数据建模, 这将大大减少分析过程中的计算工作量。主成分能 够 反映原有变量的绝大部分信息因子并不是原有变量的简单取舍,而是原有 变量重组后的 结果,因此不会造成原有 变量信息的大量丢失,并能够代表原有 变量的绝大部分信息。主成分之 间应该 互不相关通过主成分分析得出的新的综合指标(主成分)之间互不相关,因子参与数据建模能 够有效地解
3、决变量信息重叠、多重共 线性等给分析应用带来的 诸多问题。主成分具有命名解释性总之,主成分分析法是研究如何以最少的信息丢失将众多原有 变量浓缩成少数几个因子,如何使因子具有一定的命名解释性的多元统计分析方法。 二、基本原理主成分分析是数学上对数据降维的一种方法。其基本思想是设法将原来众多的具有一定相关性的指标 X1,X2,XP(比如 p 个指标),重新 组 合成一组较少个数的互不相关的综合指标 Fm 来代替原来指标 。那么综合指标应该如何去提取,使其既能最大程度的反映原变量 Xp 所代表的信息,又能保 证新指标之间保持相互无关(信息不重叠)。设 F1 表示原变量的第一个线性组合所形成的主成分指
4、标,即,由数学知识可知,每一个主成分所提取的信息量可用其方1121.pFaXaX差来度量,其方差 Var(F1)越大,表示 F1 包含的信息越多。常常希望第一主成分 F1 所含的信息量最大,因此在所有的线 性组合中选取的 F1 应该是 X1,X2,XP 的所有线性组合中方差最大的,故称 F1 为第一主成分。如果第一主成分不足以代表原来 p 个指标的信息,再考虑选取第二个主成分指标 F2,为有效地反映原信息, F1 已有的信息就不需要再出现在 F2 中,即 F2 与 F1 要保持独立、不相关,用数学语言表达就是其协方差 Cov(F1, F2)=0,所以 F2 是与 F1 不相关的 X1,X2,X
5、P 的所有线性组合中方差最大的,故称 F2 为第二主成分,依此类推构造出的 F1、F2、Fm 为原变量指标 X1、X2XP 第一、第二、第 m 个主成分。11212 212.pmmmpFaXaX根据以上分析得知:(1) Fi 与 Fj 互不相关,即 Cov(Fi,Fj) = 0,并有 Var(Fi)=aiai,其中 为 X 的协方差阵(2)F1 是 X1,X2,Xp 的一切线性组合(系数满足上述要求)中方差最大的,即Fm 是与 F1,F2,Fm1 都不相关的 X1,X2,XP 的所有线性组合中方差最大者。F1,F2,Fm(mp)为构造的新 变量指标,即原变量指标的第一、第二、第 m 个主成分。
6、由以上分析可见,主成分分析法的主要任 务有两点:(1)确定各主成分 Fi(i=1,2,m)关于原变量 Xj(j=1,2 , p)的表达式,即系数( i=1,2,m; j=1,2 ,p)。从数学上可以证明,原变量协方差矩阵的特征根是主ija成分的方差,所以前 m 个较大特征根就代表前 m 个较大的主成分方差值;原变量协方差矩阵前 m 个较大的特征值 (这样选 取才能保证主成分的方差依次最大)所对应的特征向量就i是相应主成分 Fi 表达式的系数 ,为了加以限制,系数 启用的是 对应的单位化的特征iaiai向量,即有 = 1。ai(2)计算主成分载荷,主成分 载荷是反映主成分 Fi 与原 变量 Xj
7、 之间的相互关联程度: (,)(,2,;1,2)kikiPZxpkm 三、主成分分析法的计算步骤主成分分析的具体步骤如下: (1)计算协方差矩阵计算样品数据的协方差矩阵:=(s ij)pp,其中i,j=1,2,p1()nij kikjjsxx(2)求出 的特征值 及相应的正交化单位特征向量iia 的前 m 个较大的特征值 12m0,就是前 m 个主成分对应的方差, 对应的单i位特征向量 就是主成分 Fi 的关于原变量的系数, 则原变 量的第 i 个主成分 Fi 为:iaFi = Xia主成分的方差(信息)贡献率用来反映信息量的大小, 为:i1/miii(3)选择主成分最终要选择几个主成分,即
8、F1,F2,Fm 中 m 的确定是通过方差(信息)累计贡献率G(m)来确定 1()/pikG当累积贡献率大于 85%时,就认为能足够反映原来变量的信息了,对应的 m 就是抽取的前 m 个主成分。(4)计算主成分载荷主成分载荷是反映主成分 Fi 与原变量 Xj 之间的相互关 联程度,原来 变量 Xj(j=1,2 , p)在诸主成分 Fi(i=1,2,m)上的荷载 lij( i=1,2,m; j=1,2 ,p)。:(,)(1,;1,)ijijlZXaj 在 SPSS 软件中主成分分析后的分析结果中, “成分矩阵”反应的就是主成分载荷矩阵。(5)计算主成分得分计算样品在 m 个主成分上的得分:i =
9、 1,2,m12.iiipiFaXaX实际应用时,指标的量纲往往不同,所以在主成分计算之前 应先消除量纲的影响。消除数据的量纲有很多方法,常用方法是将原始数据标准化,即做如下数据变换: *1,2.;,.ijjijxinjps其中: ,1njijx221()nijji根据数学公式知道,任何随机变量对其作标准化变换后,其协方差与其相关系数是一回事,即标准化后的变量协 方差矩阵就是其相关系数矩 阵。 另一方面,根据协方差的公式可以推得标准化后的协方差就是原变量的相关系数,亦即,标准化后的变量的协方差矩阵就是原变量的相关系数矩阵。也就是 说,在 标准化前后变量的相关系数矩 阵不变化。根据以上论述,为消
10、除量纲的影响,将变量标准化后再计算其 协方差矩阵,就是直接计算原变量的相关系数矩阵,所以主成分分析的 实际常用计 算步骤是:计算相关系数矩阵求出相关系数矩阵的特征值 及相应的正交化单位特征向量iia选择主成分 计算主成分得分总结:原指标相关系数矩阵相应的特征值 i 为主成分方差的贡献,方差的 贡献率为 , 越大,说明相 应的主成分反映综合信息的能力越 强,可根据 i 的大小来1/piiii提取主成分。每一个主成分的组合系数(原变量在该主成分上的 载荷) 就是相应特征值 iia所对应的单位特征向量。二、主成分分析的计算步骤1、计算相关系数矩阵rij(i,j=1,2,p)为原变量 xi与 xj的相
11、关系数, rij=rji,其计算公式为2、计算特征值与特征向量解特征方程 ,常用雅可比法( Jacobi)求出特征值,并使其按大小顺序排列 ; 分别求出对应于特征值 的特征向量 ,要求 =1,即其中 表示向量 的第 j 个分量。3、计算主成分贡献率及累计贡 献率贡献率:累计贡献率:一般取累计贡献率达 85%-95%的特征值, 所对应的第 1、第 2、第m(mp)个主成分。 4、计算主成分载荷5、各主成分得分ppprrrR 212112nknkjjii jkjikiij xxr1122)()(0RI21p i ),21(pieLie12pjieijeie),21(1pipki L),(1ipki
12、k m,21L),21,(),( pjiexzljiij LnmnmzzzzZ 212112三、主成分分析法在 SPSS 中的操作1、指标数据选取、收集与录入(表 1)2、Analyze Data Reduction Factor Analysis,弹出 Factor Analysis 对话框:3、把指标数据选入 Variables 框, Descriptives: Correlation Matrix 框组中选中 Coefficients,然后点击 Continue, 返回 Factor Analysis 对话框, 单击 OK。注意:SPSS 在调用Factor Analyze 过程进行分析
13、时, SPSS 会自动对原始数据进行标准化处理, 所以在得到计算结果后的变量都是指经过标准化处理后的变量, 但SPSS 并不直接给出标准化后的数据, 如需要得到标准化数据, 则需调用Descriptives 过程进行计算。从表3 可知GDP 与工业增加值, 第三产业增加值、固定资产投资、基本建设投资、社会消费品零售总额、地方财政收入 这几个指标存在着极其显 著的关系, 与海关出口总额存在着显著关系。可见许多变量之间 直接的相关性比较强, 证明他 们存在信息上的重叠。主成分个数提取原则为主成分对应的特征值大于1的前m 个主成分。特征值在某种程度上可以被看成是表示主成分影响力度大小的指标, 如果特
14、征值小于1, 说明该主成分的解释力度还不如直接引入一个原变量的平均解释力度大, 因此一般可以用特征值大于1作为纳入标准。通过表4( 方差分解主成分提取分析) 可知, 提取2个主成分 , 即m=2, 从表5( 初始因子载荷矩阵) 可知GDP、工业 增加值、第三产业增加值、固定资产投资、基本建 设投资、社会消费品零售总额、海关出口总额 、地方 财政收入在第一主成分上有 较高载荷, 说明第一主成分基本反映了这些指标的信息; 人均GDP 和农业增加值指标在第二主成分上有较高载荷, 说明第二主成分基本反映了人均GDP 和农业增加值两个指标的信息。所以提取两个主成分是可以基本反映全部指标的信息, 所以决定
15、用两个新变量来代替原来的十个变量。但这两个新变量的表达还不能从输出窗口中直接得到, 因为“Component Matrix”是指初始因子载荷矩阵, 每一个载荷量表示主成分与对应变量的相关系数。用表5( 主成分载荷矩阵) 中的数据除以主成分相对应的特征 值开平方根便得到两个主成分中每个指标所对应的系数。将初始因子 载荷矩阵中的两列数据 输入( 可用复制粘贴的方法) 到数据 编辑窗口( 为变量B1 、B2) , 然后利用“TransformCompute Variable”, 在Compute Variable对话框中输 入“A1=B1/SQR(7.22)” 注: 第二主成分SQR后的括号中填1.
16、235, 即可得到特征向量A 1(见表6) 。同理 , 可得到特征向量A 2。将得到的特征向量与标准化后的数据相乘, 然后就可以得出主成分表达式注: 因本例只是为了说明如何在SPSS 进行主成分分析, 故在此不对提取的主成分进行命名, 有兴趣的读者可自行命名。标准化:通过AnalyzeDescriptive StatisticsDescriptives 对话框来实现: 弹出Descriptives 对话框后, 把X 1X 10 选入Variables 框, 在Save standardized values as variables 前的方框打上钩, 点击“OK”, 经标准化的数据会自动填入数据窗口中, 并以Z开头命名。以每个主成分所对应的特征值占所提取主成分总的特征值之和的比例作为权重计算主成分综合模型, 即用第一主成分F1 中每个指标所对应的系数乘上第一主成分F1 所对应的贡献率再除以所提取两个主成分的两个贡献率之和, 然后加上第二主成分F2 中每个指标所对应的系数乘上第二主成分F2 所对应的贡献率再除以所提取两个主成分的两个贡献率之和, 即可得到综合得分模型: