admin管理员组文章数量:1037775
R语言中的主成分方法:PCA分析和可视化实用指南
主成分分析(PCA)允许我们总结和可视化包含多个相互关联的定量变量描述的个体/观察的数据集中的信息。每个变量都可以被视为不同的维度。如果你的数据集中有3个以上的变量,那么可视化多维超空间可能会非常困难。
主成分分析用于从多元数据表中提取重要信息,并将这些信息表示为一组称为主成分的新变量。这些新变量对应于原始变量的线性组合。主成分的数量小于或等于原始变量的数量。
给定数据集中的信息对应于它所包含的 total variation 。PCA的目标是识别数据中变化最大的变量(或主成分)。
换句话说,PCA将多变量数据的维度减少到两个或三个主成分,可以以图形方式可视化,信息损失最小。
在本文中,我们描述了PCA的基本思想,并演示了如何使用R软件计算和可视化PCA。此外,我们将展示如何揭示解释数据集中变化的最重要变量。
基础知识
了解PCA的细节需要线性代数的知识。在这里,我们将仅用简单的数据图形表示来解释基础知识。
在下面的图1A中,数据以X-Y坐标系表示。降维是通过识别数据变化的主方向(称为主成分)来实现的。
PCA假设具有最大方差的方向是最“重要”的(即,最主要的)。
在下图中,PC1 坐标轴是样品显示最大变化的第1主成分方向。PC2 坐标轴是第2重要的主成分 ,正交线是PC1的轴。
从技术上讲,每个主成分保留的方差量是由所谓的特征值来衡量的。
注意,当数据集中的变量高度相关时,PCA方法特别有用。相关性表明数据中存在冗余。由于这种冗余,PCA可以用于将原始变量减少到更少数量的新变量(=主成分),解释原始变量中的大部分方差。
综合起来,主成分分析的主要目的是:
- • 识别数据集中隐藏模式
- • 通过去除数据中的噪声和冗余来降低数据的维数,
- • 识别相关变量
计算
R包
在R软件中有几个来自不同软件包的函数可用于计算PCA:
- • prcomp()和princomp()[内置R stats包],
- • PCA()[FactoMineR包],
- • dudi.pca()[ade4包],
- • 和epPCA()[Exposition包]
无论您决定使用什么函数,您都可以使用 factoextra
R包中提供的R函数轻松提取和可视化PCA结果。
在本文中,我们将使用两个包FactoMineR(用于分析)和factoextra(用于基于ggplot2的可视化)。
安装两个包如下:
代码语言:javascript代码运行次数:0运行复制install.packages(c("FactoMineR", "factoextra"))
在R中加载它们,通过键入以下内容:
代码语言:javascript代码运行次数:0运行复制library("FactoMineR")
library("factoextra")
数据格式
我们将使用factoextra包中的演示数据集 decathlon2 :
代码语言:javascript代码运行次数:0运行复制data(decathlon2)
# head(decathlon2)
如图3.1所示,这里使用的数据描述了运动员在两个体育赛事(Desctar和OlympicG)中的表现。它包含27个人(运动员)由13个变量描述。
请注意,只有这些个体和变量中的一些将用于执行主成分分析。在PCA之后,将预测因子图上剩余个体和变量的坐标。
在PCA术语中,我们的数据包含:
- • 活跃个体(浅蓝色,1:23行):在主成分分析中使用的个体。
- • 补充个体(深蓝色,第24:27行):将使用PCA信息和使用活动个体/变量获得的参数预测这些个体的坐标
- • 活动变量(粉色,列1:10):用于主成分分析的变量。
- • 补充变量:作为补充个体,这些变量的坐标也将被预测。这些可以是:
- • 补充连续变量(红色):第11列和第12列分别对应运动员的排名和积分。
- • 补充定性变量(绿色):第13列对应于两次运动员会议(2004年奥运会或2004年Decastar)。这是一个分类(或因子)变量因子。它可以用于按组对个体进行着色。
我们首先为主成分分析划分活跃个体和活跃变量的子集:
代码语言:javascript代码运行次数:0运行复制decathlon2.active <- decathlon2[1:23, 1:10]
head(decathlon2.active[, 1:6], 4)
数据标准化
在主成分分析中,变量通常被标度(即标准化)。当变量以不同的尺度测量时(例如:千克、公里、厘米等),特别建议这样做;否则,所获得的PCA输出将受到严重影响。
目标是使变量具有可比性。一般来说,变量被缩放为i)标准差1和ii)平均值0。
数据标准化是在PCA和聚类分析之前广泛用于基因表达数据分析的方法。当变量的平均值和/或标准差相差很大时,我们也可能想要缩放数据。
当缩放变量时,数据可以转换如下:
其中
R语言中的主成分方法:PCA分析和可视化实用指南
主成分分析(PCA)允许我们总结和可视化包含多个相互关联的定量变量描述的个体/观察的数据集中的信息。每个变量都可以被视为不同的维度。如果你的数据集中有3个以上的变量,那么可视化多维超空间可能会非常困难。
主成分分析用于从多元数据表中提取重要信息,并将这些信息表示为一组称为主成分的新变量。这些新变量对应于原始变量的线性组合。主成分的数量小于或等于原始变量的数量。
给定数据集中的信息对应于它所包含的 total variation 。PCA的目标是识别数据中变化最大的变量(或主成分)。
换句话说,PCA将多变量数据的维度减少到两个或三个主成分,可以以图形方式可视化,信息损失最小。
在本文中,我们描述了PCA的基本思想,并演示了如何使用R软件计算和可视化PCA。此外,我们将展示如何揭示解释数据集中变化的最重要变量。
基础知识
了解PCA的细节需要线性代数的知识。在这里,我们将仅用简单的数据图形表示来解释基础知识。
在下面的图1A中,数据以X-Y坐标系表示。降维是通过识别数据变化的主方向(称为主成分)来实现的。
PCA假设具有最大方差的方向是最“重要”的(即,最主要的)。
在下图中,PC1 坐标轴是样品显示最大变化的第1主成分方向。PC2 坐标轴是第2重要的主成分 ,正交线是PC1的轴。
从技术上讲,每个主成分保留的方差量是由所谓的特征值来衡量的。
注意,当数据集中的变量高度相关时,PCA方法特别有用。相关性表明数据中存在冗余。由于这种冗余,PCA可以用于将原始变量减少到更少数量的新变量(=主成分),解释原始变量中的大部分方差。
综合起来,主成分分析的主要目的是:
- • 识别数据集中隐藏模式
- • 通过去除数据中的噪声和冗余来降低数据的维数,
- • 识别相关变量
计算
R包
在R软件中有几个来自不同软件包的函数可用于计算PCA:
- • prcomp()和princomp()[内置R stats包],
- • PCA()[FactoMineR包],
- • dudi.pca()[ade4包],
- • 和epPCA()[Exposition包]
无论您决定使用什么函数,您都可以使用 factoextra
R包中提供的R函数轻松提取和可视化PCA结果。
在本文中,我们将使用两个包FactoMineR(用于分析)和factoextra(用于基于ggplot2的可视化)。
安装两个包如下:
代码语言:javascript代码运行次数:0运行复制install.packages(c("FactoMineR", "factoextra"))
在R中加载它们,通过键入以下内容:
代码语言:javascript代码运行次数:0运行复制library("FactoMineR")
library("factoextra")
数据格式
我们将使用factoextra包中的演示数据集 decathlon2 :
代码语言:javascript代码运行次数:0运行复制data(decathlon2)
# head(decathlon2)
如图3.1所示,这里使用的数据描述了运动员在两个体育赛事(Desctar和OlympicG)中的表现。它包含27个人(运动员)由13个变量描述。
请注意,只有这些个体和变量中的一些将用于执行主成分分析。在PCA之后,将预测因子图上剩余个体和变量的坐标。
在PCA术语中,我们的数据包含:
- • 活跃个体(浅蓝色,1:23行):在主成分分析中使用的个体。
- • 补充个体(深蓝色,第24:27行):将使用PCA信息和使用活动个体/变量获得的参数预测这些个体的坐标
- • 活动变量(粉色,列1:10):用于主成分分析的变量。
- • 补充变量:作为补充个体,这些变量的坐标也将被预测。这些可以是:
- • 补充连续变量(红色):第11列和第12列分别对应运动员的排名和积分。
- • 补充定性变量(绿色):第13列对应于两次运动员会议(2004年奥运会或2004年Decastar)。这是一个分类(或因子)变量因子。它可以用于按组对个体进行着色。
我们首先为主成分分析划分活跃个体和活跃变量的子集:
代码语言:javascript代码运行次数:0运行复制decathlon2.active <- decathlon2[1:23, 1:10]
head(decathlon2.active[, 1:6], 4)
数据标准化
在主成分分析中,变量通常被标度(即标准化)。当变量以不同的尺度测量时(例如:千克、公里、厘米等),特别建议这样做;否则,所获得的PCA输出将受到严重影响。
目标是使变量具有可比性。一般来说,变量被缩放为i)标准差1和ii)平均值0。
数据标准化是在PCA和聚类分析之前广泛用于基因表达数据分析的方法。当变量的平均值和/或标准差相差很大时,我们也可能想要缩放数据。
当缩放变量时,数据可以转换如下:
其中
本文标签: R语言中的主成分方法PCA分析和可视化实用指南
版权声明:本文标题:R语言中的主成分方法:PCA分析和可视化实用指南 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1748304516a2282752.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论