搜档网
当前位置:搜档网 › SPSS教程_CHAP13_主成分分析与因子分析

SPSS教程_CHAP13_主成分分析与因子分析

第13章主成分分析与因子分析

介绍:

1、主成分分析与因子分析的概念

2、主成分分析与因子分析的过程


60%
主成分分析与因子分析的概念
需要与可能:在各个领域的科学研究中,往往需要对反映事物的
多个变量进行大量的观测,收集大量数据以便进行分析寻找规律。
多变量大样本无疑会为科学研究提供丰富的信息,但也在一定程
度上增加了数据采集的工作量,更重要的是在大多数情况下,许
多变量之间可能存在相关性而增加了问题分析的复杂性,同时对
分析带来不便。如果分别分析每个指标,分析又可能是孤立的,
而不是综合的。盲目减少指标会损失很多信息,容易产生错误的
结论。因此需要找到一个合理的方法,减少分析指标的同时,尽
量减少原指标包含信息的损失,对所收集的资料作全面的分析。
由于各变量间存在一定的相关关系,因此有可能用较少的综合指
标分别综合存在于各变量中的各类信息。主成分分析与因子分析
就是这样一种降维的方法。
主成分分析与因子分析是将多个实测变量转换为少数几个不相关
的综合指标的多元统计分析方法
直线综合指标往往是不能直接观测到的,但它更能反映事物的本
质。因此在医学、心理学、经济学等科学领域以及社会化生产中
得到广泛的应用。



60%
主成分分析与因子分析的概念(续)
由于实测的变量间存在一定的相关关系,
因此有可能用较少数的综合指标分别综
合存在于各变量中的各类信息,而综合
指标之间彼此不相关,即各指标代表的
信息不重叠。综合指标称为因子或主成
分(提取几个因子),一般有两种方法:
.特征值>1
.累计贡献率>0.8







60%
主成分分析实例P316-不旋转
使用默认值进行最简单的主成分分析(默认为主成分分析法:Principal
components)
例子P316:对美国洛杉矶12个人口调查区的5个经济学变量的数据进行因
子分析,data13-01a,数据见下一张幻灯片)
菜单:Analyze-Data Reduction-Factor
.Variables :pop,School,employ,Services,house
.其他使用默认值(主成分分析法Principal components,选取特征值>1,
不旋转)
.比较有用的结果:两个主成分(因子)f1,f2及因子载荷矩阵(Component Matrix),根据该
表可以写出每个原始变量(标准化值)的因子表达式:




Pop.0.581f1 + 0.806f2

School .0.767f1 -0.545f2

employ .0.672f1 + 0.726f2

Services .0.932f1 -0.104f2

house .0.791f1 -0.558f2

.每个原始变量都可以是5个因子的线性组合,提取两个因子f1和f2,可以概括原始变量所包
含信息的93.4%。f1和f2前的系数表示该因子对变量的影响程度,也称为变量在因子上


载荷。
.但每个因子(主成分)的系数(载荷)没有很明显的差别,所以不好命名。因此为了对因子
进行命名,可以进行旋转,使系数向0和1两极分化,这就要使用选择项。





60%
洛衫矶对12个人口调查区的数据
编号总人口中等学校平均总雇员数专业服务中等房价
nopop校龄Schoolemploy 项目数Services house1570012.8250027025000
2100010.96001010000
334008.81000109000
4380013.61700140250005400012.8160014025000
682008.326006012000
7120011.44001016000
8910011.533006014000
9990012.534001801800010960013.73600390250001196009.63300801200012940011.4400010013000
60%
因子分析实例322-旋转Rotation
由于系数没有很明显的差别,所以要进行旋转(Rotation:method一般用Varimax方
差最大旋转),使系数向0和1两极分化, 例子同上
菜单:Analyze-Data Reduction-Factor
.Variables :pop,School,employ,Services,house
.Extraction:使用默认值(method:Principal components,选取特征值
>1)
.Rotation:method选Varimax
.Score:Save as variables 和Display factor score Coefficient matrix
.比较有用的结果:两个主成分(因子)f1,f2及旋转后的因子载荷矩阵(Rotated Component
Matrix),根据该表可以写出每个原始变量(标准化值)的因子表达式:




Pop.0.01602f1 + 0.9946f2

School .0 .941f1 -0.00882f2

employ .0.137f1 + 0.98f2

Services .0.825f1 +0.447f2

house .0.968f1 -0.00605f2

.第一主因子对中等学校平均校龄,专业服务项目,中等房价有绝对值较大的载荷(代
表一般社会福利-福利条件因子); 而第二主因子对总人口和总雇员数有较大的载荷
(代表人口-人口因子). P326
.比较有用的结果:因子得分fac1_1, fac2_1。其计算公式:因子得分系数和原始
变量的标准化值的乘积之和(P326)。然后可以利用因子得分进行聚类p327(Analyze->Classify->Hierarchical Cluster)。





60%
主成分分析实例P330 -不旋转
市场研究中的顾客偏好分析
在市场研究中,常常要求分析顾客的偏好和当前市场的产品与顾
客偏好之间的差别,从而找出新产品开发的方向。顾客偏好分析
时常用到主成分分析方法(因子没有旋转)。
例子P330:数据来自SAS公司,1980年一个汽车制造商在竞争
对手中选择了17种车型,访问了25个顾客,要求他们根据自己的
偏好对17种车型打分。打分范围0~9.9,9.9表示最高程度的偏
好。data13-02a(17×25:17个case,25个变量V1-V25)
菜单:Analyze-Data Reduction-Factor
.Variables :V1-V25
.Extraction:method:Principal components




Extract:Number of factors:3 要三个主成分

.Score:Save as variables
.比较有用的结果:3个主成分及其因子载荷矩阵(Component Matrix):第一主
成分和第二主成分的载荷图(Loading plots)
.比较有

用的结果:因子得分fac1_1, fac2_1 , fac3_1。然后可以利用因子得分
进行各种分析:做偏好图:用fac1_1, fac2_1做散点图(Graphs->Scatter:
X-fac1_1 , Y-fac2_1):第一主成分反映了车的产地,第二主成分反映了车
的特性(质量、动力、座位数等)
.具体见P332-334





60%
补充:主成分分析和因子分析
以下的讲义是吴喜之教授有
关主成分分析和因子分析的讲义,
我觉得比书上讲得清楚。















60%
汇报什么?

假定你是一个公司的财务经理,掌握了公司的
所有数据,比如固定资产、流动资金、每一笔
借贷的数额和期限、各种税费、工资支出、原
料消耗、产值、利润、折旧、职工人数、职工
的分工和教育程度等等。
如果让你向上面介绍公司状况,你能够把这些
指标和数字都原封不动地摆出去吗?
当然不能。
你必须要把各个方面作出高度概括,用一两个
指标简单明了地把情况说清楚。



60%
主成分分析
每个人都会遇到有很多变量的数据。
比如全国或各个地区的带有许多经济和社会变
量的数据;各个学校的研究、教学等各种变量
的数据等等。
这些数据的共同特点是变量很多,在如此多的
变量之中,有很多是相关的。人们希望能够找
出它们的少数“代表”来对它们进行描述。
本章就介绍两种把变量维数降低以便于描述、
理解和分析的方法:主成分分析(principalcomponentanalysis)和因子分析(factoranalysis)。实际上主成分分析可以说是因子
分析的一个特例。在引进主成分分析之前,先
看下面的例子。



60%
成绩数据(student.sav)
100个学生的数学、物理、化学、语文、历
史、英语的成绩如下表(部分)。



60%
从本例可能提出的问题

目前的问题是,能不能把这个数据的6
个变量用一两个综合变量来表示呢?
这一两个综合变量包含有多少原来的信
息呢?
能不能利用找到的综合变量来对学生排
序呢?这一类数据所涉及的问题可以推
广到对企业,对学校进行分析、排序、
判别和分类等问题。



60%
主成分分析
例中的的数据点是六维的;也就是说,每个观
测值是6维空间中的一个点。我们希望把6维空
间用低维空间表示。
先假定只有二维,即只有两个变量,它们由横
坐标和纵坐标所代表;因此每个观测值都有相
应于这两个坐标轴的两个坐标值;如果这些数
据形成一个椭圆形状的点阵(这在变量的二维
正态的假定下是可能的)
那么这个椭圆有一个长轴和一个短轴。在短轴
方向上,数据变化很少;在极端的情况,短轴
如果退化成一点,那只有在长轴的方

向才能够
解释这些点的变化了;这样,由二维到一维的
降维就自然完成了。



60%
主成分分析
当坐标轴和椭圆的长短轴平行,那么代表
长轴的变量就描述了数据的主要变化,而
代表短轴的变量就描述了数据的次要变化。
但是,坐标轴通常并不和椭圆的长短轴平
行。因此,需要寻找椭圆的长短轴,并进
行变换,使得新变量和椭圆的长短轴平行。
如果长轴变量代表了数据包含的大部分信
息,就用该变量代替原先的两个变量(舍
去次要的一维),降维就完成了。
椭圆(球)的长短轴相差得越大,降维也
越有道理。



60%
-4-2024-4-2024
60%
主成分分析
对于多维变量的情况和二维类似,也
有高维的椭球,只不过无法直观地看
见罢了。
首先把高维椭球的主轴找出来,再用
代表大多数数据信息的最长的几个轴
作为新变量;这样,主成分分析就基
本完成了。
注意,和二维情况类似,高维椭球的
主轴也是互相垂直的。这些互相正交
的新变量是原先变量的线性组合,叫
做主成分(principalcomponent)。



60%
主成分分析
正如二维椭圆有两个主轴,三维椭球有三
个主轴一样,有几个变量,就有几个主成
分。
选择越少的主成分,降维就越好。什么是
标准呢?那就是这些被选的主成分所代表
的主轴的长度之和占了主轴长度总和的大
部分。有些文献建议,所选的主轴总长度
占所有主轴长度之和的大约85%即可,
其实,这只是一个大体的说法;具体选几
个,要看实际情况而定。



60%
.对于我们的数据,SPSS输出为


.这里的InitialEigenvalues就是这里的六个
主轴长度,又称特征值(数据相关阵的特
征值)。头两个成分特征值累积占了总方
差的81.142%。后面的特征值的贡献越来越
少。


Total Variance Explained3.73562.25462.2543.73562.25462.2541.13318.88781.1421.13318.88781.142.4577.61988.761.3235.37694.137.1993.32097.457.1532.543100.000Component123456Total% of VarianceCumulative %Total% of VarianceCumulative %
Initial EigenvaluesExtraction Sums of Squared LoadingsExtraction Method: Principal Component Analysis.
60%
.特征值的贡献还可以从SPSS的所谓碎石图看出


Scree PlotComponent Number654321Eigenvalue43210
60%
.怎么解释这两个主成分。前面说过主成分
是原始六个变量的线性组合。是怎么样的
组合呢?SPSS可以输出下面的表。


Component Matrixa-.806.353-.040.468.021.068-.674.531-.454-.240-.001-.006-.675.513.499-.181.002.003.893.306-.004-.037.077.320.825.435.002.079-.342-.083.836.425.000.074.276-.197MATHPHYSCHEMLITERATHISTORYENGLISH123456ComponentExtraction Method: Principal Component Analysis.
6 components extracted.a. .这里每一列代表一个主成分作为原来变

量线性组
合的系数(比例)。比如第一主成分作为数学、
物理、化学、语文、历史、英语这六个原先变量
的线性组合,系数(比例)为-0.806,-0.674,-
0.675,0.893,0.825,0.836。



60%
.如用x1,x2,x3,x4,x5,x6分别表示原先的六个变量,而用
y1,y2,y3,y4,y5,y6表示新的主成分,那么,原先六个变量
x1,x2,x3,x4,x5,x6与第一和第二主成分y1,y2的关系为:
X1=-0.806y1+0.353y2X2=-0.674y1+0.531y2X3=-0.675y1+0.513y2X4=0.893y1+0.306y2x5=0.825y1+0.435y2x6=0.836y1+0.425y2
.这些系数称为主成分载荷(loading),它表示主成分和相应
的原先变量的相关系数。
.比如x1表示式中y1的系数为-0.806,这就是说第一主成分和数
学变量的相关系数为-0.806。
.相关系数(绝对值)越大,主成分对该变量的代表性也越大。
可以看得出,第一主成分对各个变量解释得都很充分。而最后
的几个主成分和原先的变量就不那么相关了。



60%
.可以把第一和第二主成
分的载荷点出一个二维图
以直观地显示它们如何解
释原来的变量的。这个图
叫做载荷图。



60%
Component PlotComponent 11.0.50.0-.5-1.0Component 21.0.50.0-.5-1.0englishhistoryliteratchemphysmath
该图左面三个点是数学、物理、化学三科,右边三个点
是语文、历史、外语三科。图中的六个点由于比较挤,
不易分清,但只要认识到这些点的坐标是前面的第一二
主成分载荷,坐标是前面表中第一二列中的数目,还是
可以识别的。
60%
因子分析
主成分分析从原理上是寻找椭球的所有主轴。因此,
原先有几个变量,就有几个主成分。
而因子分析是事先确定要找几个成分,这里叫因子
(factor)(比如两个),那就找两个。
这使得在数学模型上,因子分析和主成分分析有不少
区别。而且因子分析的计算也复杂得多。根据因子分
析模型的特点,它还多一道工序:因子旋转(factorrotation);这个步骤可以使结果更好。
当然,对于计算机来说,因子分析并不比主成分分析
多费多少时间。
从输出的结果来看,因子分析也有因子载荷(factorloading)的概念,代表了因子和原先变量的相关系数。
但是在输出中的因子和原来变量相关系数的公式中的
系数不是因子载荷,也给出了二维图;该图虽然不是
载荷图,但解释和主成分分析的载荷图类似。



60%
.主成分分析与因子分析的公式上的区别


11111221221122221122ppppppppppyaxaxaxyaxaxaxyaxaxax
....
....
....
.
.
..
.
1111122112211222221122mmmmppppmmpxafafafxafafafxafafaf
..
..
..
......
......
......
.
.
..
.
11111221221122221122ppppmmmmppfxxxfxxxfxxx
...
...
...
....
....
....
.
.
..
.
主成分分析P312
因子分析(mP314
因子得分P315
60%
.对于

我们的数据,SPSS因子分析输出为


Rotated Component Matrixa-.387.790-.172.841-.184.827.879-.343.911-.201.913-.216MATHPHYSCHEMLITERATHISTORYENGLISH12ComponentExtraction Method: Principal Component Analysis.
Rotation Method: Varimax with Kaiser Normalization.
Rotation converged in 3 iterations.a.
这里,第一个因子主要和语文、历史、英语三科有很强的
正相关;而第二个因子主要和数学、物理、化学三科有很
强的正相关。因此可以给第一个因子起名为“文科因子”,
而给第二个因子起名为“理科因子”。从这个例子可以看
出,因子分析的结果比主成分分析解释性更强。
60%
Component Plot in Rotated SpaceComponent 11.0.50.0-.5-1.0Component 21.0.50.0-.5-1.0englishhistoryliteratchemphysmath
.这两个因子的系数所形成的散点图(虽然
不是载荷,在SPSS中也称载荷图,


可以直观看出每个因子代表了一类学科
60%
计算因子得分
可以根据前面的因子得分公式(因子得分系数
和原始变量的标准化值的乘积之和),算出每
个学生的第一个因子和第二个因子的大小,即
算出每个学生的因子得分f1和f2。
人们可以根据这两套因子得分对学生分别按照
文科和理科排序。当然得到因子得分只是SPSS
软件的一个选项(可将因子得分存为新变量、
显示因子得分系数矩阵)



60%
因子分析和主成分分析的一些注意事项
可以看出,因子分析和主成分分析都依赖于原始
变量,也只能反映原始变量的信息。所以原始变
量的选择很重要。
另外,如果原始变量都本质上独立,那么降维就
可能失败,这是因为很难把很多独立变量用少数
综合的变量概括。数据越相关,降维效果就越好。
在得到分析的结果时,并不一定会都得到如我们
例子那样清楚的结果。这与问题的性质,选取的
原始变量以及数据的质量等都有关系
在用因子得分进行排序时要特别小心,特别是对
于敏感问题。由于原始变量不同,因子的选取不
同,排序可以很不一样。



60%
SPSS实现(因子分析与主成分分析)
拿student.sav为例,选Analyze-Data Reduction-Factor进入主对
话框;
把math、phys、chem、literat、history、english选入Variables,
然后点击Extraction,
在Method选择一个方法(如果是主成分分析,则选Principal
Components),
下面的选项可以随意,比如要画碎石图就选Scree plot,另外在
Extract选项可以按照特征值的大小选主成分(或因子),也可以选
定因子的数目;
之后回到主对话框(用Continue)。然后点击Rotation,再在该对
话框中的Method选择一个旋转方法(如果是主成分分析就选
None),
在Display选Rotated solution(以输出和旋转有关的结果)和
Loading plot(以输

出载荷图);之后回到主对话框(用
Continue)。
如果要计算因子得分就要点击Scores,再选择Save as variables(因子得分就会作为变量存在数据中的附加列上)和计算因子得分
的方法(比如Regression);之后回到主对话框(用Continue)。
这时点OK即可。




相关主题