因子分析原理及结果解析

因子分析的起源:

1904年英国的一个心理学家发现学生的英语、法语和古典语成绩非常有相关性,他认为这三门课程背后有一个共同的因素驱动,最后将这个因素定义为“语言能力”。基于这个想法,发现很多相关性很高的因素背后有共同的因子驱动,从而定义了因子分析。

主要思想:

因子分析主要基于降维的思想,通过探索变量之间的相关系数矩阵, 根据变量的相关性大小对变量进行分组,使同组内变量间的相关性较高,不同组变量的相关性较 低,而代表每组数据基本结构的新变量称为公共因子。也就是说,因子分析就是在尽可能不损失或
者少损失原始数据信息的情况下,将错综复杂的众多变量聚合成少数几个独立的公共因子,这几个 公共因子可以反映原来众多变量的主要信息,在减少变量个数的同时,又反映了变量之间的内在联 系。比如衡量某地区综合发展情况,我们可以通过因子分析,将六个指标(变量)聚合为两三个公共因子。

分类:

根据分析目的的不同,我们可以将因子分析分为探索性因子分析和验证性因子分析
探索性因子分析:将众多变量聚合为少数几个的公共因子,揭示观测变量之间的内在数据结构。
验证性因子分析:验证已分类的维度是否符合数据情况,是否有效。

用SPSS做因子分析的步骤:

1)充分性验证

2)选择因子变量提取方法

常用主成分分析法来提取公共因子变量,特征值>1、累计方差贡献率>80%时即可提取公共因子变量。但当指标比较多时,提取的因子可能不是很明显,因此这时候就需要旋转因子。

3)旋转因子

旋转因子是为了能对各原始变量更好地分类,常用最大方差法来旋转,旋转次数可以自己规定。

4)对因子做解释和命名

解释和命名是对潜在因子理解的过程,这一步非常关键,需要非常理解业务才行,这也是我们做因子分析的主要原因。

5)计算公共因子得分

对每一样本数据,得到他们在不同因子上的具体数据值,这些数值就是因子得分。
因子得分有助于之后的分析中将公共因子当作分析变量,而不再分析降维前的原始变量。

示范

spss操作步骤:

1):操作路径:工具栏【分析-降维-因子分析】将要进行分析的六个变量“人均GDP、固定资产投资、社会消费品零售总额、农村人均纯收入、科研机构数量、卫生机构数量”添加【变量】窗口中。
2):单击【描述】,打开【因子分析:描述】对话框,选择【原始分析结果】和【KMO和巴特利特的
球形度检验】,用于生成评估变量是否适合做因子分析的统计指标。
3):单击【抽取】,打开【因子分析:抽取】对话框,在【方法】下拉框中选择【主成分】,这是最常用的用于提取因子的方法;选择【碎石图】,用于辅助判断因子个数,其他保持系统默认状态。
4):单击【旋转】,弹出【因子分析:旋转】对话框,在旋转【最大方差法】,这是最常用的因子旋转的方法,该方法可以使每个变量尽可能在一个因子上有较高的载荷,而在其他的因子上载荷较小,
从而因子更好地解释因子所包含的意义。其他的项目保持系统默认。
5):单击【得分】,打开【因子分析:因子得分】对话框,选择【保存为变量】和【回归】,用于保存计算得到的因子得分

结果解析


“KMO和巴特利特检验”主要用于评估数据是否适合做因子分析。我们主要看KM0统计量和巴特
利特的概率P值。KMO统计量为0.635,大于0.6,说明本数据集还算适合做因子分析;Bartiett球
度检验的概率值为0,小于显著性水平(0.01),即说明所分析的变量之间存在相关关系,有相关性则适合做因子分析。

从结果来看,表中6个变量的共性方差均大于0.7,表示所有原始变量被公共因子解释的程度均超过
了0.7,即提取的公共因子能够反映各原始变量70%以上的信息。说明提取的公共因子能够很好的反映原始变量的信息。

表中内容包含6个变量初始特征值及方差贡献率、提取两个公共因子后的特征值及方差贡献率、旋转后的两个公共因子后的特征值及方差贡献率。第一成分的初始特征值为3.327,远大于1;第二成分的初始特征值为1.786,大于1;从第三成分开始,其初始特征值均小于1,故因此选择两个公共因子便可以得到85.2%的累计贡献率,即表示两个公共因子可以解释约85%的总方差,结果理想。

碎石图中明显发现第一个公因子和第二个公因子变化最大,其累计贡献率达到85%,这就说明从6个变量提取的两个公因子可以表达足够的原始信息。

成分矩阵:上表表示用主成分的提取方法得到旋转前的因子负荷矩阵,根据0.5的原则,因子1在前5个变量都有很大的负荷。因子2在后两个变量上有较大的负荷。“科研机构数量”这个变量在两个因子中的载荷比较接近,难以对因子进行明确定义,即难以判断该变量应该由哪个因子进行解释。因此需要进行因子旋转。
旋转成分矩阵:经过四次方最大旋转后,得到旋转后的因子负荷矩阵。同样根据0.5原则可知,因子1可以支配农村人均纯收入、人均GDP、社会消费品零售总额三个变量,反映的是社会经济情况。因子2可以支配卫生机构数量、科研机构数量、固定资产投资三个变量,反映的是产业结构因子。这个与上面没有旋转的第二公共因子包含的内容略有差别,这说明该旋转对因子负荷起到了明显的作用。故可以得到旋转后的因子分析模型为:
农村人均纯收入 = 0.961 * F1 + 0.196 * F2
人均GDP= 0.96 * F1 + 0.091 * F2
社会消费品零售总额 = 0.885 * F1 + 0.109 * F2
卫生机构数量= -0.098 * F1 + 0.922 * F2
科研机构数量= 0.207 * F1 + 0.897 * F2
固定资产投资= 0.34 * F1 + 0.778 * F2

采用回归法计算因子得分系数如上表所示,故可以得到因子得分函数为:
F1 = 人均GDP0.363 + 固定资产投资0.037+社会消费品零售总额 * 0.332 + 农村人均纯收入 * 0.35

  • 科研机构数量0.03 - 卫生机构数量 * 0.152
    F2 = - 人均GDP
    0.075 + 固定资产投资*0.324-社会消费品零售总额 * 0.058 - 农村人均纯收入 * 0.26
  • 科研机构数量*0.396 + 卫生机构数量 * 0.446
    根据上述得出的因子得分函数,并构造社会发展水平评估函数,由方差贡献率求城市化进程评估函数:
    Zi = (0.46605 * F1 + 0.38614 * F2)/ 0.85220

FAC1_2 FAC2_2 是spss软件自己算的F1 F2得分
score是我根据 Zi = (0.46605 * F1 + 0.38614 * F2)/ 0.85220 得出的综合得分。

特别说明:
在本次的计算中,spss默认为将数据进行了标准化处理。
在SPSS中,默认的标准化方法就是Z-score标准化法。
经过Z-score标准化后,数据将符合标准正态分布,即将有约一半观察值的数值小于0,另一半观察值的数值大于0,变量的均值为0,标准差为1,变化范围为-1≤X’≤1。

因子分析原理及结果解析相关推荐

  1. 视觉SLAM开源算法ORB-SLAM3 原理与代码解析

    来源:深蓝学院,文稿整理者:何常鑫,审核&修改:刘国庆 本文总结于上交感知与导航研究所科研助理--刘国庆关于[视觉SLAM开源算法ORB-SLAM3 原理与代码解析]的公开课. ORB-SLA ...

  2. ORB-SLAM / ORB-SLAM2原理解读+代码解析(汇总了资料,方便大家学习)

    注释:本文非原创,初学搜集了很多资料附上链接,方便初学者学习,避免盲目搜索浪费时间. 目录 官方代码链接 代码框架思维导图 参考解读 参考链接- -一步步带你看懂orbslam2源码 ORB-SLAM ...

  3. Dubbo原理和源码解析之服务引用

    github新增仓库 "dubbo-read"(点此查看),集合所有<Dubbo原理和源码解析>系列文章,后续将继续补充该系列,同时将针对Dubbo所做的功能扩展也进行 ...

  4. Git内部原理之深入解析Git的引用和包文件

    一.Git 分支本质 如果对仓库中从一个提交(比如 1a410e)开始往前的历史感兴趣,那么可以运行 git log 1a410e 这样的命令来显示历史,不过需要记得 1a410e 是查看历史的起点提 ...

  5. 音视频开发(7)---流媒体服务器原理和架构解析

    流媒体服务器原理和架构解析 多媒体数据文件 一个完整的多媒体文件是由音频和视频两部分组成的,H264.Xvid等就是视频编码格式,MP3.AAC等就是音频编码格式,字幕文件只是附加文件.目前大部分的播 ...

  6. java+cache使用方法_JVM代码缓存区CodeCache原理及用法解析

    一. CodeCache简介 从字面意思理解就是代码缓存区,它缓存的是JIT(Just in Time)编译器编译的代码,简言之codeCache是存放JIT生成的机器码(native code).当 ...

  7. Tensorflow2.0---SSD网络原理及代码解析(二)-锚点框的生成

    Tensorflow2.0-SSD网络原理及代码解析(二)-锚点框的生成 分析完SSD网络的原理之后,一起来看看代码吧~ 代码转载于:https://github.com/bubbliiiing/ss ...

  8. 流媒体服务器原理和架构解析

    流媒体服务器原理和架构解析 多媒体数据文件 一个完整的多媒体文件是由音频和视频两部分组成的,H264.Xvid等就是视频编码格式,MP3.AAC等就是音频编码格式,字幕文件只是附加文件.目前大部分的播 ...

  9. Spark SQL架构工作原理及流程解析

    Spark SQL架构工作原理及流程解析,spark sql从shark发展而来,Shark为了实现Hive兼容,在HQL方面重用了Hive中HQL的解析.逻辑执行计划翻译.执行计划优化等逻辑. Sp ...

最新文章

  1. window powershell 获取前后日期,格式化日期
  2. [译] 理解 NPM 5 中的 lock 文件
  3. Top-push Video-based Person Re-identification
  4. 全球及中国箱包市场需求前景与投资动态分析报告2022版
  5. PostgreSQL 9.6.0 手册
  6. 【pyQT5】Python3+pyQT5开发环境安装与配置
  7. Meteor项目实战 -- Next 0.0.2
  8. redis java连接出错_redis连接错误与spring boot
  9. Mybatis 与Spring整合及原理
  10. 算法在岗一年的经验总结
  11. 模块之序列化模块json
  12. 说服力——教你做出专业出彩的演示PPT
  13. 心有多高 未来就有多远
  14. matlab 2017a安装教程
  15. XTU OJ 素数1076
  16. flv怎么转换成html5,快速教你如何将FLV转换MP4格式
  17. mvc 实体类 自定义验证特性
  18. C6中休假申请与人事软件的跨服务器数据库整合,已处理。
  19. 【Spring】JdbcTemplate常用方法使用示例
  20. Element 中时间选择器配置 本月 及 上个月 快捷方式

热门文章

  1. 【ZYNQ Ultrascale+ MPSOC FPGA教程】第二十三章 PS端DP的使用
  2. c语言函数指针,基于函数回调模拟实现qsort函数,实测案例
  3. m索引OFDM调制解调系统的性能仿真分析
  4. USB转串口设备linux随笔
  5. JavaEE - 多线程(进阶)
  6. 二叉树重建(前中序遍历求后序模板刘汝佳小白本)
  7. JavaSE第6篇:面向对象
  8. C# 设计原则 之 里氏代换 原则
  9. postMessage详解
  10. 【英语】学习记录——6/3