SPSS没有提供单独的主成分分析方法,而是混在因子分析当中,下面通过一个例子来讨论主成分分析与因子分析的实现方法及相关问题。
一、问题提出
>
数据视图(部分):
菜单选择(分析->降维->因子分析):
打开因子分析的主界面,将十项成绩选入”变量“框中(不要包含总分),如下:
点击”描述“按钮,打开对话框,选中”系数“和”KMO和Bartlett球形度检验“:
上图相关解释:
”系数“:为变量之间的相关系数阵列,可以直观的分析相关性。
”KMO和Bartlett球形度检验“:用于定量的检验变量之间是否具有相关性。
点击”继续“,回到主界面,点击”抽取“,打开对话框。
”方法“ =>”主成分“,”输出“=>”未旋转的因子解“和”碎石图“,”抽取“=>”基于特征值“,其余选择默认。
解释:
①因子抽取的方法:选取默认的主成分法即可,其余方法的计算结果可能有所差异。
②输出:”未旋转的因子解”极为主成分分析结果。碎石图有助于我们判断因子的重要性(详细介绍见后面)。
③抽取:为抽取主成分(因子)的方法,一般是基于特征值大于1,默认即可。
点击”继续“,回到主界面,点击”确定“,进入分析。
输出的主要表格如下:
(1)相关性检验
因子分析要求变量之间有相关性,所以首先要进行相关性检验。首先输出的是变量之间的相关系数矩阵:
可以直观的看到,变量之间有相关性。但需要检验,接着输出的是相关性检验:
上图有两个指标:第一个是KMO值,一般大于0.7就说明不了之间有相关性了。第二个是Bartlett球形度检验,P值<0.001。综合两个指标,说明变量之间存在相关性,可以进行因子分析。否则,不能进行因子分析。
(2)提取主成分和公因子
接下来输出主成分结果:
这就是主成分分析的结果,表中第一列为10个成分;第二列为对应的”特征值“,表示所解释的方差的大小;第三列为对应的成分所包含的方差占总方差的百分比;第四列为累计的百分比。一般来说,选择”特征值“大于1的成分作为主成分,这也是SPSS默认的选择。
在本例中,成分1和2的特征值大于1,他们合计能解释71.034%的方差,还算不错。所以我们可以提取1和2作为主成分,抓住了主要矛盾,其余成分包含的信息较少,故弃去。
下面,输出碎石图,如下:
碎石图来源于地质学的概念。在岩层斜坡下方往往有很多小的碎石,其地质学意义不大。碎石图以特征值为纵轴,成分为横轴。前面陡峭的部分特征值大,包含的信息多,后面平坦的部分特征值小,包含的信息也小。
由图直观的看出,成分1和2包含了大部分信息,从3开始就进入平台了。
接下来,输出提取的成分矩阵:
上表中的数值为公因子与原始变量之间的相关系数,绝对值越大,说明关系越密切。公因子1和9个运动项目都正相关(注意跑步运动运动的计分方式,时间越短,分数越高),看来只能称为“综合运动”因子了。公因子2与铁饼、铅球正相关,与1500米跑、400米跑负相关,这究竟代表什么意思呢?看来只能成为“不知所云”因子了。
(三)因子旋转
前面提取的两个公因子一个是大而全的“综合因子”,一个不知所云,得到这样的结果,无疑是分析的失败。不过,不要灰心,我们可以通过因子的旋转来获得更好的解释。在主界面中点击“旋转”按钮,打开对话框,“方法”=>“最大方差法”,“输出”=>“旋转解”。
点击“继续”,回到主界面点击“确认”进行分析。输出结果如下:
这是选择后的成分矩阵。经过旋转,可以看出:
公因子1得分越高,所有的跑步和跨栏成绩越差,而跳远、撑杆跳等需要助跑类项目的成绩也越差,所以公因子1代表的是奔跑能力的反向指标,可称为“奔跑能力”。
公因子2与铁饼和铅球的正相关性很高,与标枪、撑杆跳等需要上肢力量的项目也正相关,所以该因子可以成为“上肢力量”。
经过旋转,可以看出公因子有了更合理的解释。
(四)结果的保存
在最后,我们还要将公因子储存下来供后续使用。点击“得分”按钮,打开对话框,选中“保存为变量”,方法采用默认的“回归”方法,同时选中“显示因子得分系数矩阵”。
SPSS会自动生成2个新变量,分别为公因子的取值,放在数据的最后。同时会输出一个因子系数表格:
由上图,我们可以写出公因子的表达式(用F1、F2代表两个公因子,Z1~Z10分别代表原始变量):
F1 = -0.16*Z1+0.161*Z2+0.145*Z3+0.199*Z4-0.131*Z5-0.167*Z6+0.137*Z7+0.174*Z8+0.131*Z9-0.037*Z10
F2同理,略去。
注意,这里的变量Z1~Z10,F1、F2不再是原始变量,而是标准正态变换后的变量。