因子分析

  • 因子分析(探索性因子分析)用于探索分析项(定量数据)应该分成几个因子(变量),比如20个量表题项应该分成几个方面较为合适;用户可自行设置因子个数,如果不设置,系统会以特征根值大于1作为判定标准设定因子个数。

    因子分析通常有三个步骤;第一步是判断是否适合进行因子分析;第二步是因子与题项对应关系判断;第三步是因子命名。

    • 第一步:判断是否进行因子分析,判断标准为KMO值大于0.6;

    • 第二步:因子与题项对应关系判断。

    • 因子与题项对应关系判断:假设预期为3个因子(变量),分析题项为10个;因子与题项交叉共得到30个数字,此数字称作”因子载荷系数”(因子载荷系数值表示分析项与因子之间的相关程度); 针对每个因子(变量),对应10个”因子载荷系数”,针对每个分析项,则有3个”因子载荷系数值”(比如0.765,-0.066,0.093),选出3个数字绝对值大于0.4的那个值(0.765),如果其对应因子1,则说明此题项应该划分在因子1下面.

    • 对不合理题项进行删除:共有三种情况; 第一类:如果分析项的共同度值小于0.4,则对应分析项应该作删除处理;第二类:某分析项对应的”因子载荷系数”的绝对值,全部均小于0.4,也需要删除此分析项;第三类:如果某分析项与因子对应关系出现严重偏差(通常也称作‘张冠李戴’),也需要对该分析项进行删除处理。

    • 第三步:因子命名。

    • 在第二步删除掉不合理题项后,并且确认因子与题项对应关系良好后,则可结合因子与题项对应关系,对因子进行命名。

    • 分析项 网购满意度20个题项
      因子分析说明 网购满意度由20个题表示,此20个题项可浓缩成几个大方面?
    • 分析结果表格示例如下(SPSSAU同时会生成碎石图):

      因子载荷系数 共同度
      因子1 因子2 因子3
      分析项1 0.765 -0.066 0.093 0.598
      分析项2 0.676 0.081 -0.017 0.464
      分析项3 0.657 0.207 -0.205 0.517
      分析项4 0.645 0.271 0.089 0.497
      分析项5 0.501 0.457 0.085 0.467
      分析项6 0.311 0.697 -0.005 0.583
      分析项7 0.226 -0.669 0.130 0.516
      分析项8 0.191 0.644 0.046 0.453
      分析项9 0.476 -0.187 0.542 0.555
      分析项10 0.001 -0.048 0.968 0.939
      • 特别提示
      • 因子分析进行因子浓缩时,通常会经历多个重复循环,删除不合理项,并且重复多次循环,最终得到合理结果。

    • SPSSAU操作截图如下:

      • 特别提示
      • 关于“保存因子得分”:因子分析将信息浓缩成几个因子,并且可让系统保存“因子得分”,。因子得分可用于进一步分析,比如聚类分析,回归分析使用等。

      • 关于“保存综合得分”:如果使用因子分析的目的在于进行综合竞争力排名,比如银行的绩效排名,上市公司竞争力排名等,此时可直接保存综合得分,用于竞争力排名。

因子分析案例

  • 1、背景

    当前有一份数据,共涉及A1~A4,B1~B4,C1~C3,D1~D3共14个量表题,希望将此14个量表题使用因子分析浓缩成几个维度。从背景情况上看,预期此14个题目可分为4个维度,分别称作A,B,C和D维度。当然有可能个别项并不合适,因此有可能对其进行删除处理。

  • 2、理论

    因子分析是一种信息浓缩的分析方法,比如此例中有14项,此14项可以浓缩成几个关键词描述。好比一个人说了14句话,事实上可以用四个词语直接描述即可。当然14句话最终用四个词语表示,那么信息肯定有一些丢失(方差解释率表达4个词语可以提取出14项的信息量)。以及14个句话可以和4个词语进行对应起来。最核心的其实是找出对应关系,这才是关键。

    • 一般情况下,如果14项与4个维度之间的对应关系情况,与专业知识情况不符合,比如A1被划分到了C维度下面,此时则说明可能A1这项应该被删除处理,其出现了‘张冠李戴’现象。因而在进行分析时很可能会对部分不合理项进行删除处理。

    • 关于维度(因子)和题项对应关系,维度(因子)和题项之间交叉会得到一个‘因子载荷系数’,此系数绝对值大于0.4,则说明二者有着较强关联性,该题项可以与该维度(因子)有着对应关系。

    • 单独提示
    • 有时候会出现‘纠缠不清’现象,比如A1可归属为A维度,同时也可归属到C维度,这种情况较为正常(称作‘纠缠不清’),需要结合实际情况处理即可,可将A1删除,也可不删除,带有一定主观性。因子分析是一个多次重复的过程,比如删除某个或多个题项后,则需要重新再次分析进行对比选择等。最终目的在于:维度与分析项对应关系,与专业知识情况基本吻合。

    • 再次提示
    • 题项和因子(维度)对应关系判断规则:某项对应某因子的因子载荷系数绝对值大于0.4,则说明该项对应该因子。

    • ‘张冠李戴’:其指比如A1本来应该划分在A维度,但分到其它维度比如B维度中;此种情况最终不能被接受,需要删除A1这项。

    • ‘纠缠不清’:其指比如A1可归属到A维度,也可以归属到B维度,此种情况最终可被接受,A1这项可视情况归为A或B维度均可。

  • 3、操作

    • Step1: 第一次分析

      本例子中A1~A4,B1~B4,C1~C3,D1~D3共14个量表题,此14个题目共分为4个维度,因此在分析前可主动告诉SPSSAU,此14项是四个因子,否则SPSSAU会自动判断多少个因子(通常软件自动判断与实际情况有很大出入,所以建议主动设置因子个数)。如下图:

      完成后结果如下:

        从上图中可以看出:

      • A1~A4这4项,它们全部对应着因子3时,因子载荷系数值均高于0.4,说明此4项应该同属于一个维度,即逻辑上A1~A4这4项,并没有出现‘张冠李戴’现象。但是A1和A2这两项出现‘纠缠不清’现象,A1和A2除了可以对应因子3,也可以放在因子1下面。一般出现‘纠缠不清’现象时,暂时保留,先处理清楚‘张冠李戴’问题更好。

      • B1~B4共4项,B2,B3,B4这3项对应着因子1下面,但是B1却对应着因子2,因此B1这项属于‘张冠李戴’,应该将B1删除。B2同时对应因子1和因子2均可,属于‘纠缠不清’,暂不处理B2。

      • C1~C3共3项,此3项均对应着因子2,此3项并没有出现‘纠缠不清’或者‘张冠李戴’问题。

      • D1~D3共3项,D3出现了‘张冠李戴’问题,应该进行删除处理。D2出现了‘纠缠不清问题’(可对应因子1和因子4),应该给予关注。

      • 总结上述分析可知:B1和D3这两项出现‘张冠李戴’,应该首先将此两项删除;而A1,A2,B2,D2共四项有出现‘纠缠不清现象’,暂时不处理(进行关注即可)。将B1和D3这两项删除后,进行第二次分析。

    • Step2: 第二次分析

      将B1和D3这两项删除后,进行第二次分析。结果如下:

        从上图可知

      • A1出现‘张冠李戴’现象,应该删除,A2出现‘纠缠不清’现象,暂不处理,但应该给予关注

      • B2~B4共3项没有问题

      • C1~C3共3项没有问题。

      • D2出现‘纠缠不清现象’

      • 总结可知:应该将A1先删除后再次进行第3次分析,另对A2和D2这两项给予关注。

    • Step3: 第三次分析

      将A2先删除后再次分析结果如下:

      • 从上图可知

      • D2可同时出现在因子2和因子4下面,但考虑到D维度当前仅余下2项,因而表示可以接受,最终是将D2归纳到因子4即D维度下面。最终找出A,B,C和D共4个维度,它们分别与项之间的对应关系良好。因子分析结束。

  • 4、SPSSAU输出结果

    将最终处理好的结果作为最终结果,并且进行描述即可,由于中间过程可能会非常多,因而不需要具体报告中间过程表格。

  • 5、文字分析

    • 针对第一个表格:

      从上表可知:使用因子分析对14个项进行分析,并且因子分析使用最大方差旋转法进行旋转。因子分析时,KMO值为0.876>0.6,通过巴特球形检验,说明本次数据非常适合进行因子分析。

    • 针对第二个表格:

      从上表可知:累积方差解释率值为78.213%,说明提取出来的4个因子可以提取出总共11项中78.213%的信息量,而且四个因子的方差解释率(信息提取量)分别为:21.407%,21.277%,20.807%和14.723%。信息提取量分布较为均匀,综合说明本次因子分析结果良好。

    • 针对第三个表格:

      从上表可知:使用因子分析对14个项进行浓缩处理。最终浓缩为四个因子,在进行第一次分析时发现B1和D3这两项,它们与预期对应关系情况,和专业情况不符合(另外一种写法是因子载荷系数值小于0.4,本应该对应该维度时因子载荷系数大于0.4,但是却低于0.4了),因而删除此两项后进行第二次分析,第二次分析时删除掉A1这个题项。最终余下11个题项,此11项与预期对应关系情况良好,与专业预期相符。结合因子与分析项的对应关系情况,最终对浓缩出来的四个因子进行分别命名为:A,B,C和D维度。

      • 特别提示
      • 因子分析时还会输出一个表格叫“成分得分矩阵”,如果涉及到权重计算,此会使用此表格。

      • 因子分析后通常还需要将因子综合,比如此例子得到4个因子,4个因子分别与项之间有对应关系,如何将项概括起来呢。有以下两种办法:

      • 因子分析后通常还需要将因子综合,比如此例子得到4个因子,4个因子分别与项之间有对应关系,如何将项概括起来呢。有以下两种办法:

      • 1:计算平均值(此种做法通常是针对问卷,其它数据并不符合)

      • 2:使用因子得分,如下图操作

  • 6、剖析

    因子分析涉及以下几个关键点,分别如下:

    • 区分‘张冠李戴’和‘纠缠不清’这两种现象;

    • 通常先处理掉‘张冠李戴’现象,然后自然的到后面‘纠缠不清’问题会减少,后续即使有个别‘纠缠不清’现象时,也基本可以接受。

    • 通常需要首先设置好因子个数,而不是让软件自动识别。

    • 需要来回多次进行对比,找出最佳结果。

    • 同样的样本数据,不同的分析思路,有可能出现结果不相同,但只要符合因子的思维概念即可。

    • 因子分析结束后,还需要用得到的几个因子,用于后续分析使用,通常可使用因子得分(问卷常使用平均分)继续后续用于回归分析,聚类分析等。

疑难解惑

  • 同源方差或共同方法变异偏差,Harman单因子检验?
  • 同源方差是指测量方法(比如问卷收集数据)带来的可能潜在误差。如何测量呢?通常情况下是使用Harman单因子检验方法。即:把所有量表项进行因子分析时,如果只得出一个因子或者第一个因子的解释力(方差解释率)特别大【具体多大建议以文献为准,通常50%则非常大】,此时可判定存在同源方差(共同方法偏差)。

  • 同源方差的检验还有其它方法,比如验证性因子分析(CFA),SPSSAU会在后续版本加入此算法功能。

  • 提示出现奇异矩阵?
  • 如果提示出现“奇异矩阵”,通常情况下由于分析样本量太少(比如分析项有20个,分析样本仅10个),此里需要加大样本量或者减少分析项即可;以及还有一种情况是分析项之间的相关性非常非常弱,此时需要移除掉相关性非常弱的分析项(使用相关分析进行检查相关关系)。

  • 因子得分和综合得分?
  • 因子分析将信息浓缩成少数几个因子,如果选中“因子得分”,此时可SPSSAU会保存起来,名字比如为:FAC****_score1。因子得分可用于进一步的分析,比如聚类分析使用等。

  • 如果使用因子分析的目的在于进行综合竞争力排名,比如银行的绩效排名,上市公司竞争力排名等,此时可直接保存综合得分,用于竞争力排名。SPSSAU会新生成一个标题名字比如为: Comp_score****,综合得分数据通常需要手工下载然后在EXCEL里面再次使用(比如排序等),可使用右上角‘数据管理’,把原始数据下载出来。

  • 因子分析计算权重?
  • 如果使用因子分析的目的在于计算权重,此时可使用旋转后方差解释率值进行权重计算。比如提取2个因子,旋转后的方差解释率分别是39.759%,24.061%,旋转后累积方差解释率为63.820%。那么归一化(即除累积方差解释率)即得到权重,计算如下表:

名称 旋转后方差解释率 权重
因子1 39.759% =39.759%/63.820%=62.30%
因子2 24.061% =24.061%/63.820%=37.79%
  • KMO值过低?
  • 一般需要KMO值大于0.6即可,如果是两个分析项,KMO值一定是0.5;因而建议删除掉共同度值较低项,这样可以提升KMO值。

  • 如果不输出KMO值,意味着数据质量过差,建议可使用相关分析看下相关关系,如果相关系数值基本均小于0.3,则说明题项间关联性弱,有可能出现KMO无法计算输出。

  • 无论如何均‘张冠李戴’或‘纠缠不清’?
  • ‘张冠李戴’是需要处理的,如果无论如何都有‘张冠李戴’现象,意味着维度和题项间对应关系有问题。可考虑减少因子个数进行对比分析。【特别提示:因子分析是一个来回多次重复对比,结合软件输出和自身专业知识情况综合选择对比找出最优结果的过程】

  • ‘纠缠不清’这种现象,多数时候并不需要处理。

  • 因子分析相关名词解释?
术语 说明
KMO 一个用于检验是否适合因子分析的指标,一般大于0.6即可。
Bartlett球形度检验 对应的P值小于0.05则说明适合进行因子分析。
特征根 自动识别因子最佳个数的指标,通常大于1作为标准。实际应用中,多数时候是自行设置因子个数。
方差解释率 因子提取的信息量,比如21.651%,意味着该因子提取出所有分析项21.651%的信息量表,方差解释率直接就可理解为权重值。
累积方差解释率 所有因子提取出的信息量,该指标值一般大于50%即可。
最大方差旋转法(Varimax 一种旋转方法,类似于‘魔方’的六种颜色需要对应在一起。一般使用最大方差旋转法。
共同度 可用于衡量分析项是否有意义的项,一般小于0.4说明该项需要被删除。
因子载荷系数 用于衡量因子和分析项对应关系的指标,其绝对值大于0.4,则说明分析项应隶属于对应的因子。
成分得分 中间计算过程值,通常意义很小。
碎石图 将特征根以图示形式展示,用于辅助判断因子个数。
  • 最大方差旋转问题?
  • SPSSAU默认使用最大方差旋转法(Varimax)对数据进行旋转。特征根,方差解释率和累积方差解释率这三项均区分旋转前和旋转后;如果让软件自动识别因子个数,是以旋转前特征根大于1作为标准;其余情况下的分析建议以旋转后作为标准。

  • 因子得分后用于后续分析比如聚类分析等?
  • 因子得分可用于进一步分析使用如果进行聚类分析使用等,因子得分需要选中按钮才会生效,且SPSSAU单独生成新标题名称类似为:“FAC****_score1”。用户可通过【数据处理->标题处理】对名称进行修改即可。

  • 综合得分如何使用?
  • 综合得分可用于对比综合竞争力情况,综合得分值越高,此时综合竞争力越强。此类应用常见于经济、管理类研究,比如上市公司的竞争实力对比。

  • 综合得分需要选中按钮才会生效,且SPSSAU单独生成一列新标题名称类似为:“Comp_score****”,一般情况下用户需要把综合得分的原始数据下载出来使用,通过右上角‘我的数据->下载’,可将综合得分下载出来使用。

  • 因子分析提示“出错啦”或者“非正定矩阵”?
  • 1、因子分析时,放错分析项(重要提示: 效度分析仅仅是针对量表数据

  • 2、数据质量过差。

  • 3、样本量过少,比如仅30个样本

  • 4、如果是问卷数据,请使用‘描述分析’检查,数据中是否有‘-2’,‘-3’之类的异常值(如果有,请先把数据下载,清除掉此类异常数据【直接替换为空】后再上传分析)

  • 5、分析项之间的相关关系非常强(使用相关分析进行检查)

  • 解决办法
  • 如果是放错分析项,将非量表数据放入,则重新放置分析项即可

  • 加大样本量,通常建议100以上的样本量

  • 移除相关关系非常强的项后重新分析

  • 因子分析时,KMO值不存在?
  • 1、因子分析时,放错分析项(重要提示: 因子分析仅仅是针对量表数据,并非把所有标题均放入

  • 2、数据质量过差,建议可使用相关分析看下相关关系,如果相关系数值基本均小于0.3,则说明题项间关联性弱,也有可能出现KMO无法计算输出。

  • 3、样本量过少

  • 解决办法
  • 如果是放错分析项,将非量表数据放入,则重新放置分析项即可

  • 加大样本量,通常建议100以上的样本量