前两篇文章介绍了因子分析与主成分分析的原理与基本步骤。初次学习时,大家可能感觉这是两个基本相同的方法,但实际上两者间还是有一定差异的。这篇文章就带大家盘点一下两个方法间的异同。
目的
-
因子分析:旨在识别观测变量背后的潜在因素或结构,这些因素是不可观测的。它通常用于探索性数据分析,以发现变量之间的潜在关系。
-
主成分分析:主要用于数据降维,将原始变量转换为较少数量的主成分,这些主成分是原始变量的线性组合。它不涉及潜在变量的概念。
方法
-
因子分析:
- 考虑变量之间的相关性,通过最小化残差来提取因子。
- 通常使用最大似然法、最小二乘法或因子载荷估计等方法。
- 因子载荷是观测变量与潜在因子之间的相关系数。
-
主成分分析:
- 考虑变量的方差,寻找能够解释最大方差的线性组合。
- 使用特征值分解或奇异值分解等方法。
- 主成分是原始变量的加权线性组合,权重由特征向量给出。
应用
-
因子分析:
- 常用于社会科学、心理学和市场研究等领域,用于探索变量之间的潜在结构和关系。
-
主成分分析:
- 广泛应用于数据预处理、图像压缩、金融风险管理等领域,用于减少数据集的维度。
假设
-
因子分析:
- 假设变量的相关性是由较少数量的潜在因子引起的。
- 因子通常是随机的,具有特定的分布。
-
主成分分析:
- 假设变量之间的相关性可以通过线性组合来解释。
- 主成分是确定性的,不涉及随机性。
因子与主成分的区别
-
因子:是潜在的、不可观测的变量,通常具有特定的解释性。
-
主成分:是原始变量的线性组合,是可观测的,主要用于数据降维。
举例
到此都是一些教科书式的解释,下面举一个简单的例子方便大家理解。
假设场景
假设我们是一家健康研究机构,收集了一组关于100名志愿者的以下数据:
- 年龄(Age)
- 体重(Weight)
- 身高(Height)
- 血压(Blood Pressure)
- 胆固醇水平(Cholesterol)
我们的目标是探索这些变量之间的关系,并简化数据结构。
主成分分析(PCA)
目标:PCA旨在降维,找到数据中方差最大的方向,即主成分。
步骤:
- 标准化数据:因为变量的量纲不同,首先对数据进行标准化。
- 计算协方差矩阵:找到变量间的关系。
- 特征值分解:找到协方差矩阵的特征向量和特征值,特征向量决定了主成分的方向,特征值决定了主成分解释的方差比例。
- 选择主成分:通常选择前几个特征值较大的主成分。
结果:
- 第一主成分可能与体重和身高高度相关,因为这两个变量通常在体型描述中变化最大。
- 第二主成分可能与血压和胆固醇相关,因为它们可能共同反映了心血管健康。
解释:
- PCA找到的是数据中方差最大的方向,而不是变量背后的潜在因素。
因子分析
目标:因子分析旨在识别观测变量背后的潜在因素或结构。
步骤:
- 数据标准化:同样需要对数据进行标准化。
- 计算相关性矩阵:分析变量之间的相关性。
- 提取因子:通过因子提取方法(如极大似然法)找到因子载荷,即每个变量与每个因子的关系。
- 因子旋转:为了更易于解释,可能需要对因子进行旋转(如Varimax)。
- 解释因子:为每个因子赋予一个有意义的名称,如“身体健康”。
结果:
- 第一个因子可能被解释为“身体健康”,因为它与体重、身高、血压和胆固醇都有较高的载荷。
- 第二个因子可能与“年龄”相关,因为随着年龄的增长,体重、血压和胆固醇可能会发生变化。
解释:
- 因子分析关注的是变量背后的潜在因素,而不是单纯的方差解释。
通过这个例子,我们可以看到PCA和因子分析在处理相同数据集时的不同视角和应用。PCA更注重数据的方差解释和降维,而因子分析更注重揭示数据的潜在结构和内在联系。
总结
因子分析和主成分分析虽然都可以用于降维,但它们的目标和方法不同。因子分析更侧重于探索数据的潜在结构,而主成分分析更侧重于数据的方差解释。在实际应用中,选择哪种方法取决于分析的目的和数据的特性。