摘要:主成分分析与因子分析(R-型)应用十分广泛,但一些论文和一些SPSS软件教科书(见附文)出错。本文指出了这些错误及其成因,指出了出错造成的危害,从原理上给出了主成分分析与R-型因子分析数学模型详细的异同,给出了避免出错的方法, 并对SPSS软件及有关教科书提出了一些建议。
关键词:主成分分析;因子分析;SPSS软件;出错;避免
设=(X1 ,„,XP为标准化随机向量(p≥2),R为相关系数矩阵,
=(Z1 ,„,Zm
为因子向量,m≤p,为
=(F1 ,„,Fm 为主成分向量,
方便,因子、因子估计、因子得分用同一记号。
一、问题的提出与结论
主成分分析与R-型因子分析是多元统计分析中的两个重要方法,同是降维技术,应用范围十分广泛,但通过流行甚广的SPSS软件调用这两种方法的过程命令,使用者容易出错,是什么原因造成这些错误呢?主成分分析与R-型因子分析到底有何异同呢?出错会造成什么危害呢?
由于SPSS软件在经济、医学、管理等领域中的广泛流行使用,解决这些问题尤其必要。
经过对一些论文和一些SPSS软件教科书(见附文)仔细查证分析、比较、研究得出:
出错原因:有些使用者和书作者对主成分分析与R-型因子分析的原理、异同与解题步骤掌握不透,现行SPSS软件及其书中没有完善这两种方法的研究(对高校师生出错影响很大)。
结论:主成分分析与R-型因子分析有10处主要的不同,致使主成分分析与因子分析的定量综合评价体系不同,混淆在一起是不同定量值交替错误,综合评价必须分开进行。
出错带来的危害:企业经济效益、竞争力等的综合评价会带来误评,医学诊断会带来误诊,决策会带来误断等。
二、一些使用者出现的错误及其成因分析
经过仔细查证分析,有下列错误:
使用主成分分析时①对主成分分析的原理没有掌握, 如叙述主成分分析概念出错。②主成分F求解出错,如阵,
=
中
(
为单位矩
的意义见表1)。③不知主成分F的命名依据,对主成分F命名出
错误地进行旋转。⑥错误地进行回
错。④解释变量某Xk 被丢失。⑤对
归求F。⑦把因子分析法(含没有旋转过程的)错误地当作主成分分析法。 使用因子分析时①对因子分析的原理没有掌握, 如将因子分析的思想叙述为主成分分析的思想。②不知因子Zi的命名依据,对因子Zi 的命名出错,如用因子得分函数对因子Zi进行命名。③解释变量某Xk 被丢失。④将主成分或因子错误地表示为
(
的意义见表1)。⑤不知相关系数矩
阵特征值与因子贡献vi的区别,如综合因子得分函数Z综 =Zi
中的vi错误地取为特征值。使用SPSS软件时①由于SPSS软件本身无主
成分分析模块,有些使用者就用因子分析中一些模块来制造主成分的结果,出现了混乱的定量过程。②由于SPSS软件教科书中因子分析内容处混淆主成分分析与因子分析,致使有些使用者也混淆这两种方法出错。
从以上可看出出错的原因是:有些使用者对主成分分析与R-型因子分析的原理(原理可见[4])、异同与解题步骤掌握不透,现行SPSS软件及其书中没有完善这两种方法的研究。
三、主成分分析与R-型因子分析数学模型的异同比较
这里给出的主成分分析与R-型因子分析的异同,与现行观点相比,是内容与过程上的比较,更透彻、更准确,是认识的深入。
相同之处:主成分分析与R-型因子分析都是对协差阵的逼近,都是打算降维解释数据集。具体为指标的正向化[3], 指标的标准化(SPSS软件自动执行),通过相关系数矩阵判断变量间的相关性,求相关系数矩阵的特征值和特征向量, 主成分间、因子间线性无关,用累计贡献率(
%)、变量
不出现丢失确定主成分、因子个数m, 前m个主成分与前m个因子对X的综合贡献相同、是最大化的,命名依据都是主成分、因子与变量的相关系数。
不同之处:方差, 最大化方向, 所处的坐标系(标准正交性), 应用上侧重等见表1。
表1 主成分分析与R-型因子分析的不同
区别项目 表达式与系数矩阵 主成分分析数学模型: R-型因子分析数学模型: +(为特殊因子), =(),=(„,),因子载荷矩阵, m = ()=是相应的特征≥„≥值和单位特征向量,≥ 0。 =() „,为初等因子载荷矩阵(因变量Fi依次达到信息贡献最大化, 方差最Var Fi=大化 。 矩阵方差最大化旋转 同左)。 Zi没有达到最大化,Var Zi=1。 无, 旋转后就不是主成分了,因为 Var Fi ≠λi 。 有,为m方差最大达到方差最正交旋转矩阵,大化。 标准正交性 是,即特征值。 (判据之一)。 非,因为。 因变量对X 的贡献 相关系数 命名依据 vi=,vi,通常> v1 。 =用(。 ,„,)式中系数绝将=。 的第j列绝对值大的对应对值大的对应变量对Fj命名,有变量归为Zj一类并由此对Zj命时命名清晰性低。 回归过程 综合评价函数及方差 无。 名,命名清晰性高(精细)。 有,因子得分函数 F综 = Fi , Z综 =Zi, vi(判据之一) Var Z综 = (Var F综 = (,或 转后因子贡献从„+综(旋变为vi,因), , 通常VarF综 > VarZ此权数应取为vi/, 或v1 + v2 +„+vm 。 成因清晰性的综合评价。 即F综 的取值范围通常比Z综 大。 信息贡献影响力综合评价。 应用上侧重 注意:主成分分析有时命名清晰, 此时既能达到信息贡献影响力综合评
价效果, 又能达到成因清晰性的综合评价效果,此时主成分分析的结果多数优于因子分析的结果。
以上说明:主成分分析与因子分析定量上不同的显著性标志是方差。事实上,VarFi >(<) VarZi =1,即Fi 的取值范围比Zi 的取值范围大(小);通常VarF综 > VarZ综 ,即F综 的取值范围比Z综 的取值范围大(见表5、8),这些都肯定了主成分分析与因子分析的定量值评价体系不同。
结论:主成分分析与因子分析两种方法方差、最大化方向不同,直接导致主成分值、因子得分值、综合评价值和应用侧重上不同,综合评价应该分开进行, 混淆在一起是不同定量值交替错误。
出错带来的危害:如在企业的综合评价中,某行业通过样本搜集,可确定出主成分分析、因子分析各自优、良、中、一般的定量值范围,两种方法确定的定量值范围肯定不同,如果混用二种方法,那么就会带来二种方法定量值的误用, 甚至误评,使企业失去公平竞争机会。在医学诊断、经济竞争力等综合评价问题中也是如此。
检验: 用实际结果、经验和原始数据做聚类分析对综合评价值进行检验。 争议解决:用原始数据做判别分析解决综合评价中的争议。
四、避免出错的方法步骤
1.主成分分析法和SPSS软件应用时一对一的正确步骤: ①指标的正向化[2]。
②指标数据标准化(SPSS软件自动执行)。
③指标之间的相关性判定: 用SPSS软件中表“Correlation Matrix(相关系数矩阵)”判定。
④确定主成分个数m:用SPSS软件中表“Total Variance Explained(总方差解释)” 的主成分方差累计贡献率
%、结合表“Component Matrix(初
始因子载荷阵)”中变量不出现丢失确定主成分个数m。
⑤主成分Fi表达式(这是SPSS软件及其教科书中没完善的地方):将SPSS软件中表“Component Matrix”中的第i列向量除以第i个特征根的开根后就得到第i个主成分函数Fi的系数(在“transform -->compute”中进行计算),由此写出主成分Fi表达式。用
的
=
检验之。
⑥主成分Fi命名:用SPSS软件中表“Component Matrix”中的第i列中系数绝对值大的对应变量对Fi命名(有时命名清晰性低)。
⑦主成分与综合主成分(评价)值(这是SPSS软件及其教科书中没完善的地方):综合主成分(评价)公式 F综 = -->compute”中进行计算[3]),
Fi (在“transform
在SPSS软件中表“Total Variance
Explained”下“Initial Eigrnvalues(主成分方差)”栏的
“% of Variance(方差率)”中。Var F综 = =(。
⑧检验:综合主成分(评价)值用实际结果、经验与原始数据做聚类分析进行检验(对有争议的结果,可用原始数据做判别分析解决争议)。
⑨综合实证分析。
2. 因子分析法和SPSS软件应用时一对一的正确步骤:
①∽③步骤同主成分分析步骤。
④确定因子个数m:用SPSS软件中表“Total Variance Explained”特征值累计贡献率
%、结合表“Rotated Component Matrix(旋转后因子
载荷阵)”中变量不出现丢失确定因子个数m。
⑤求因子载荷矩阵
: SPSS软件中表“Rotated Component Matrix”。
⑥因子Zi的命名:将SPSS软件中表“Rotated Component Matrix”因子载荷矩阵
的第i列绝对值大的对应变量归为Zi一类, 并由此对Zi命名
(命名清晰性高)。
⑦回归求因子得分函数Zi表达式:SPSS软件中表“Component Score Coefficient Matrix(因子得分系数矩阵)”的第i列向量为第i个因子得分函数Zi的系数,由此写出因子得分函数Zi表达式。
⑧求因子得分值与综合因子得分(评价)值:综合因子得分(评价)公式Z
综
=Zi (在“transform -->compute”中进行计算),在SPSS
软件中表“Total Variance Explained”下“Rotation Sums of Squared
Loadings(旋转后因子对X的方差)”栏的“% of Variance”中。用vi=
检验, 通常> v ,Var Z综 = (
1。
⑨检验:综合评价值用实际结果、经验与原始数据做聚类分析进行检验(对有争议的结果,可用原始数据做判别分析解决争议)。
⑩综合实证分析。
五、对SPSS软件及其书中的建议
①应单列主成分分析这一重要内容。②通过两种方法与软件相应结果一
对一的步骤化, 完善软件研究和教科书的正确编写。③因子分析中
Component(成分)应写为factor(因子)。④因子分析中将不应有“主成
分分析”“主成分”的用词和内容删除。⑤由于因子分析中旋转后的因子贡献与相关系数矩阵的特征值不等,应将两者区分使用。⑥笔者对SPSS软件的教科书有一分详细的更正资料,需要者可来涵。
六、应用例子。
2002年16家上市公司4项指标的数据[5]见表2,定量综合赢利能力分析如下:
表2
公司 销售净利率 (X1) 歌华有线 五粮液 用友软件 太太药业 浙江阳光 烟台万华 方正科技 红河光明 贵州茅台 中铁二局 红星发展 伊利股份 青岛海尔 湖北宜化 雅戈尔 福建南纸 43.31 17.11 21.11 29.55 11.00 17.63 2.73 29.11 20.29 3.99 22.65 4.43 5.40 7.06 19.82 7.26 资产净利率 (X2) 7.39 12.13 6.03 8.62 8.41 13.86 4.22 5.44 9.48 4.64 11.13 7.30 8.90 2.79 10.53 2.99 净资产收益率 (X3) 8.73 17.29 7.00 10.13 11.83 15.41 17.16 6.09 12.97 9.35 14.3 14.36 12.53 5.24 18.55 6.99 销售毛利率 (X4) 54.89 44.25 89.37 73 25.22 36.44 9.96 56.26 82.23 13.04 50.51 29.04 65.5 19.79 42.04 22.72 1. 主成分分析的做法
用SPSS软件输入数据,先对四个指标进行标准化处理,并把标准化后的数据保存在数据编辑窗口中然后利用SPSS的factor过程对数据进行主成分分析(指标之间的相关性判定略)。得出的相关系数矩阵的特征根及方差贡献率见表3,由于前2个主成分贡献率≥85%、结合表4中变量不出现丢失,所以提取的主成分个数m=2。
表3 主成分方
差
表4 初始因子载荷阵
初始因子载荷阵见表4,表4还不能得出主成分的表达式,还需要把表4中的每列的系数除以其相应的特征根的开根后才能得到主成分系数向量,于是主成分函数的表达式为:
F1=
0.531zx1+0.594zx2+0.261zx3+0.546zx4 F2=
-0.412zx1+0.404zx2+0.720zx3-0.383zx4 (其中,zxi为标准化后的数据) 表4中每列表示相应主成分与对应变量的相关系数[4],第一主成分F1
反映的是销售净利率、资产净利率、销售毛利率的信息,而第二主成分F2则反映的是净资产收益率的信息。
最后利用主成分函数、综合主成分公式:F=0.47429F1+0.3874F2 求出16家上市公司的主成分值、综合主成分(赢利能力)值见表5。
表5. 主成分、综合主成分(赢利能力)
值
公司 烟台万华 五粮液 雅戈尔 红星发展 贵州茅台 青岛海尔 太太药业 伊利股份 浙江阳光 歌华有线 方正科技 用友软件 红河光明 中铁二局 福建南纸 湖北宜化 F1 1.21 1.16 1.03 1.20 1.41 0.21 1.31 -0.83 -0.56 1.23 -1.72 0.62 0.09 -2.00 F2 1.46 1.46 1.41 0.53 -0.31 0.35 -1.08 1.06 0.60 F 1.14 1.12 1.03 0.77 0.55 0.24 0.20 0.02 -0.03 -1.69 -0.07 1.52 -0.23 -1.89 -0.44 -1.88 -0.69 0.15 -0.89 -2.07 -0.72 -1.26 -2.29 -0.99 -1.47
2. 因子分析法的做法
表8. 因子得分、综合因子得分(赢利能力)值 公司 Z1 Z2 Z 烟台万华 五粮液 贵州茅台 红星发展 雅戈尔 太太药业 歌华有线 用友软件 0.03 0.00 0.98 0.46 1.47 1.45 0.4 0.85 0.626 0.605 0.601 0.559 0.541 0.504 0.432 0.150 0.116 -0.084 -0.207 -0.294 -0.658 -0.866 -0.956 -1.069 -0.06 1.36 1.28 -0.16 1.52 -0.58 1.25 -0.97 青岛海尔 -0.04 0.32 红河光明 0.93 -1.19 浙江阳光 -0.61 0.15 伊利股份 -0.95 0.35 方正科技 -1.73 0.26 中铁二局 -1.25 -0.74 福建南纸 -0.89 -1.35 湖北宜化 -0.89 -1.61
用SPSS软件输入数据,先对四个指标进行标准化处理,并把标准化后的数据保存在数据编辑窗口中然后利用SPSS的factor过程对数据进行因子分析(指标之间的相关性判定略)。得出的相关系数矩阵的特征根及方差贡献率见表3,由于前2个因子贡献率≥85%、结合表7中变量不
表6 旋转后因子对X的方
差 表7 旋转后的因子载
荷阵
出现丢失,所以提取的因子个数m=2。
对主成分法提取的初始因子载荷阵(见表4)进行varimax (方差最大化正交旋转), 旋转后的因子贡献及贡献率见表6。旋转后的因子载荷阵见表7,依据表7,因子Z1看成
是反映销售净利率和销售毛利率的销售能力指标,因子Z2看成是反映资产净利率和净资产收益率的资产获利能力指标。
利用regression(回归法)求得各个单因子得分函数:
Z1= 0.506zx1+0.161zx2-0.183zx3+0.502zx4 Z2=
-0.045zx1+0.515zx2+0.581zx3-0.02zx4 (其中,zxi为标准化后的数据)
利用单因子得分函数、综合因子得分公式:
Z=0.44486Z 1+0.41.684Z2
计算出16家上市公司因子得分值、综合因子得分(赢利能力)值见表8:
因篇幅问题不能全部显示,请点此查看更多更全内容