因子分析

因子分析通过研究变量间的相关系数矩阵,把这些变量间错综复杂的关系归结成少数几个综合因子,由于归接触的因子个数少于原始变量的个数,但是他们又包含原始变量的信息,所以,这一分析过程也成为降维。

正常情况下,可以用主成分分析的模型都可以用因子分析来做。所以因子分析的应用城的更广。

两者的不同:

因子模型截面回归求解 PYTHON 写出因子模型_系数矩阵


因子的线性组合构成指标。注意这里的未知数都是一个向量而不是标量

因子分析的实例:

因子模型截面回归求解 PYTHON 写出因子模型_美国大学生数学建模竞赛_02


将原来的是个指标变成了四个因子,实现了降维。

因子模型截面回归求解 PYTHON 写出因子模型_方差_03


将原来的15个指标变成了五个因子,实现了降维。

因子分析的原理

因子模型截面回归求解 PYTHON 写出因子模型_因子模型截面回归求解 PYTHON_04


因子模型截面回归求解 PYTHON 写出因子模型_方差_05

因子模型的性质:

因子模型截面回归求解 PYTHON 写出因子模型_系数矩阵_06


因子模型截面回归求解 PYTHON 写出因子模型_因子模型截面回归求解 PYTHON_07


正是因为因子载荷矩阵(也就是A)并不是唯一的,在实际的应用过程中我们常常会利用这一点,通过因子的变换,使得新的因子具有更容易解释的实际意义。

这就是为什么说因子分析往往比主成分分析的结果更容易解释的原因啦。(主成分分析最后求得的结果只有一个)。

因子载荷矩阵的统计意义

因子模型截面回归求解 PYTHON 写出因子模型_美国大学生数学建模竞赛_08


如果共性方差h2 = 0.9,个性方差 δ2 = 0.1;就说明共性方差对模型的解释程度为90%,个性方差的解释程度为10%。

因子模型截面回归求解 PYTHON 写出因子模型_因子分析_09

因子旋转(当得到的A不容易解释的时候)

已知,A不只有一个,所以我们遇到不容易解释的模型的时候,可以将因子旋转后再进行解释。

因子模型截面回归求解 PYTHON 写出因子模型_系数矩阵_10


因子模型截面回归求解 PYTHON 写出因子模型_系数矩阵_11


使用最多的方法就是最大方差法。其旋转的形式是正交旋转的。

因子得分

因子模型截面回归求解 PYTHON 写出因子模型_系数矩阵_12

因子分析的例题

因子模型截面回归求解 PYTHON 写出因子模型_美国大学生数学建模竞赛_13


用SPSS软件进行因子分析的步骤

1.

因子模型截面回归求解 PYTHON 写出因子模型_美国大学生数学建模竞赛_14


2.

因子模型截面回归求解 PYTHON 写出因子模型_因子模型截面回归求解 PYTHON_15


3.

因子模型截面回归求解 PYTHON 写出因子模型_因子模型截面回归求解 PYTHON_16


最后一个步骤的全部变量的含义:

统计:
1.单变量描述
:输出参与分析的每一个原始变量的均值、标准差和有效取值个数

2.初始解:输出未经过旋转直接计算得到的初始因子、初始特征值和初始方差贡献率等信息。

相关性矩阵

1.系数:输出初始分析变量间的相关系数矩阵。

2.显著性水平:输出每个相关系数对于单侧假设检验的显著水平。

3.决定因子:输出相关系数矩阵的行列式。

4.逆:输出相关系数的逆矩阵。

5.再生:输出因子分析后的相关矩阵,还给出原始相关与再生相关之间的值。

6.反映像:输出反映像相关矩阵,包括偏相关系数的负数

7.KMO检验和巴特利特球形检验:进行因子分析前要对数据进行KMO检验和巴特利特球形检验。

(系数,显著性水平,KMO检验和巴特利特球形检验一般来说要勾选上,其余的可有可无)

两种检验:

因子模型截面回归求解 PYTHON 写出因子模型_美国大学生数学建模竞赛_17


因子模型截面回归求解 PYTHON 写出因子模型_因子分析_18


4.

因子模型截面回归求解 PYTHON 写出因子模型_因子分析_19


5.

因子模型截面回归求解 PYTHON 写出因子模型_美国大学生数学建模竞赛_20


第一次运行主要是为了确定因子的数目,对因子的数目进行参考,第二次的运行就是我们想要得到的结果啦。

因子模型截面回归求解 PYTHON 写出因子模型_方差_21


所以这里的因子数目应该设定为2

再次进行一次:调整部分

因子模型截面回归求解 PYTHON 写出因子模型_因子分析_22


总方差的解释:

因子模型截面回归求解 PYTHON 写出因子模型_方差_23


成分矩阵(就是所谓的因子载荷矩阵)

因子模型截面回归求解 PYTHON 写出因子模型_美国大学生数学建模竞赛_24


将旋转后的成分矩阵做成散点图更加直观

因子模型截面回归求解 PYTHON 写出因子模型_方差_25


成分得分系数矩阵:(用来计算因子得分)

因子模型截面回归求解 PYTHON 写出因子模型_因子分析_26