Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【R语言】factoextra生成发表级PCA主成分分析图(一)

【R语言】factoextra生成发表级PCA主成分分析图(一)

作者头像
生信交流平台
发布于 2022-09-21 10:39:21
发布于 2022-09-21 10:39:21
1.1K01
代码可运行
举报
运行总次数:1
代码可运行

前面给大家介绍过主成分分析

☞R做PCA主成分分析

今天我们来给大家介绍另一个做PCA分析并绘图的R包factoextra,很多SCI文章中都用到了这个R包。换句话说这个R包画出来的PCA图是发表级的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#首先我们需要安装下面这两个R包
install.packages("factoextra")
install.packages("FactoMineR")

#加载这两个Rlibrary(FactoMineR)
library(factoextra)

接下来我们查看一下要使用的数据,我们会用R里面自带的一套数据集iris。Iris也称鸢尾花卉数据集,包含150个数据样本,分为3类(Setosa,Versicolour,Virginica),每类50个数据,每个数据包含4个属性,花萼长度,花萼宽度,花瓣长度,花瓣宽度(Sepal.Length,Sepal.Width,Petal.Length,Petal.Width)4个属性。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
head(iris)

进行主成分分析

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#做PCA分析,第五列为物种,非数值属性需要去除
iris.pca <- PCA(iris[,-5], graph = T)

#绘制主成分碎石图,查看每一个主成分能在多大程度上代表原来的特征
#第一个主成分就可以保留原来特征73%的信息
fviz_screeplot(iris.pca, addlabels = TRUE, ylim = c(0, 80))

接下来我们可以查看样本的主成分分析结果

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#查看样本的主成分分析结果
var <- get_pca_var(iris.pca)

#原始特征在新的坐标空间(PC1PC2...)中的坐标位置
var$coord
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#查看每一个特征对每一个主成分的贡献程度
var$contrib

接下来查看样本在新空间中的分布

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fviz_pca_ind(iris.pca,
             mean.point=F,#去除分组的中心点,否则每个群中间会有一个比较大的点
             label = "none", #隐藏每一个样本的标签
             habillage = iris$Species, #根据样本类型来着色
             palette = c("#00AFBB", "#E7B800", "#FC4E07")#三个组设置三种颜色
)

为每一个样本类群添加椭圆边界线

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#为每一个样本类群添加椭圆边界线
fviz_pca_ind(iris.pca,
             mean.point=F,#去除分组的中心点
             label = "none", #隐藏每一个样本的标签
             habillage = iris$Species, #根据样本类型来着色
             palette = c("#00AFBB", "#E7B800", "#FC4E07"),#三个组设置三种颜色
             addEllipses = TRUE #添加边界线,默认为椭圆
)

为每一个样本类群添加多边形边界线

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#为每一个样本类群添加多边形边界线
fviz_pca_ind(iris.pca,
             mean.point=F,#去除分组的中心点
             label = "none", #隐藏每一个样本的标签
             habillage = iris$Species, #根据样本类型来着色
             palette = c("#00AFBB", "#E7B800", "#FC4E07"),#三个组设置三种颜色
             addEllipses = TRUE, #添加边界线
             ellipse.type = "convex" #设置边界线为多边形
)

今天的分享就先到这里,后面我们会继续为大家介绍如何使用factoextra包来展示变量,以及如何在一张图上同时展示样本和变量。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信交流平台 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ggplot2画点和分组椭圆展示主成分分析(PCA)结果的简单小例子
这个图来自链接 http://www.sthda.com/english/articles/31-principal-component-methods-in-r-practical-guide/112-pca-principal-component-analysis-essentials/
用户7010445
2021/03/14
5.7K1
R语言主成分分析可视化(颜值高,很详细)
网络上很多R语言教程都是基于R语言实战进行修改,今天为大家介绍更好用的R包,在之前聚类分析中也经常用到:factoextra和factoMineR,关于主成分分析的可视化,大家比较常见的可能是ggbiplot,这几个R包都挺不错,大家可以比较下。
医学和生信笔记
2023/02/14
1.2K0
R语言主成分分析可视化(颜值高,很详细)
【R语言】factoextra生成发表级PCA主成分分析图(三)
观察仔细的小伙伴可能发现,在上面这张图里面有三个点比其他点要大一些,其实这三个点是三个组的中心点。那么我们怎么去除各组的中心点呢?其实只需要修改mean.poin这个参数就可以了
生信交流平台
2022/09/21
5570
【R语言】factoextra生成发表级PCA主成分分析图(三)
R语言中的主成分方法:PCA分析和可视化实用指南
主成分分析(PCA)允许我们总结和可视化包含多个相互关联的定量变量描述的个体/观察的数据集中的信息。每个变量都可以被视为不同的维度。如果你的数据集中有3个以上的变量,那么可视化多维超空间可能会非常困难。
简说基因
2025/03/13
3281
R语言中的主成分方法:PCA分析和可视化实用指南
【R语言】factoextra生成发表级PCA主成分分析图(二)
主要讲了如何展示样本的主成分分析结果,即样本在新的空间中的分布情况,便于查看样本分群的结果。
生信交流平台
2022/09/21
7470
【R语言】factoextra生成发表级PCA主成分分析图(二)
R语言PCA分析_r语言可视化代码
如果不对数据进行scale处理,本身数值大的基因对主成分的贡献会大。如果关注的是变量的相对大小对样品分类的贡献,则应SCALE,以防数值高的变量导入的大方差引入的偏见。但是定标(scale)可能会有一些负面效果,因为定标后变量之间的权重就是变得相同。如果我们的变量中有噪音的话,我们就在无形中把噪音和信息的权重变得相同,但PCA本身无法区分信号和噪音。在这样的情形下,我们就不必做定标。
全栈程序员站长
2022/11/07
2.8K0
R语言PCA分析_r语言可视化代码
R可视乎|主成分分析结果可视化
主成分分析法是很常用的一种数据降维方法[1]。该方法可以减少数据的维数,并保持对方差贡献最大的特征,相当于保留低阶主成分,忽略高阶主成分。
庄闪闪
2021/04/09
1.9K0
高维数据 | R语言绘图基础之主成分分析
在视觉性方面,人类普遍能够感知的是二维和三维空间。对于高维数据的可视化是将高维数据投影到二维或三维空间,去掉冗余属性,同时保留高维空间的数据和特征。说白了,高维数据的可视化就是使用降维度方法,主要分成线性和非线性两大类,关于非线性的非度量多维尺度分析NMDS见往期文章非度量多维尺度分析(NMDS),关于线性的PCA方法,见往期文章PCA做图最佳搭档-ggbiplot,本文主要针对迷弥小粉丝关于绘制线性PCA图数据处理过程遇到的问题进行记录。
黑妹的小屋
2020/08/06
2K0
PCA原理及实现-R
PCA是一种无参数的数据降维方法,常用的机器学习算法一种,这篇文章主要从PCA应用于解释两个方面介绍。关于PCA原理,详情这里
Jamesjin63
2022/10/25
4170
PCA原理及实现-R
高维数据的展示
降维方法分线性降维和非线性降维两大类,其中线性降维包括主成分分析PCA,多为尺度分析MDS,非矩阵分解NMF等;非线性方法包括等距特征映射和局部线性嵌套,tSNE等。
爱学习的小明明
2020/10/08
1.3K0
高维数据的展示
主成分分析 factoextra
factoextra是一个R软件包,可以轻松提取和可视化探索性多变量数据分析的输出,其中包括: 主成分分析(PCA),用于通过在不丢失重要信息的情况下减少数据的维度来总结连续(即定量)多变量数据中包含的信息。 对应分析(CA),它是适用于分析由两个定性变量(或分类数据)形成的大型列联表的主成分分析的扩展。 多重对应分析(MCA),它是将CA改编为包含两个以上分类变量的数据表格。 多因素分析(MFA)专用于数据集,其中变量按组(定性和/或定量变量)组织。 分层多因素分析(HMFA):在数据组织为分
用户1359560
2018/08/27
1.9K0
主成分分析  factoextra
表达芯片数据分析3——基因差异分析绘制火山图及差异基因热图
Erics blog
2023/10/02
7141
PCA主成分分析实战和可视化 | 附R代码和测试数据
一文看懂PCA主成分分析中介绍了PCA分析的原理和分析的意义(基本简介如下,更多见博客),今天就用数据来实际操练一下。
生信宝典
2018/12/29
4.6K0
PCA主成分分析实战和可视化 | 附R代码和测试数据
R语言学习笔记-Day08
获得探针ID与序列——> //读取gtf文件
用户11190095
2024/07/17
1980
R语言PCA可视化3D版
之前详细介绍了R语言中的主成分分析,以及超级详细的主成分分析可视化方法,主要是基于factoextra和factoMineR两个神包。
医学和生信笔记
2023/02/14
5810
R语言PCA可视化3D版
PCA-弱水三千,取哪一瓢饮?
Rplot_FVIZ.png可以很明显的看到,第一个主成分就把我们的NSCLC和SCLC区分的还不错 更多完整的PCA教程看群主之前的推文:
生信技能树
2019/05/23
1.2K0
主成分分析、K均值聚类R语言实现小实例
数据集下载链接 https://acadgildsite.s3.amazonaws.com/wordpress_images/r/wineDataset_Kmeans/Wine.csv
用户7010445
2020/03/03
1.5K0
探索TCGA的临床特征分组——做差异分析前你有没有忘记它
上次我们说到把代谢基因做差异分析,由于TCGA中上传整理的并不是严格的tumor-normal实验设计,我们前期一直探索的LAML数据,就是没有normal样本的,那么就得选取别的分组做差异分析。而在差异分析前不能忘记的就是——再次强调表达量矩阵分析一定要三张图,根据老师的要求先尝试质控三张图的pca图,我们最关心的生存结局,在这个时候就是没有显著差异的——这时我们会很自然地想到用其他临床特征来分组。
生信菜鸟团
2022/10/31
1.6K0
探索TCGA的临床特征分组——做差异分析前你有没有忘记它
R实现PCA降维
PCA(Principal Component Analysis),即主成分分析方法,是一种使用广泛的数据降维算法。详细的概念可以参照https://zhuanlan.zhihu.com/p/37777074 一般将多个样本降维就可以得到二维的分布,相似的样本成为一群,但有时候我们想知道哪些特征导致了这样的分群。 这里我们主要讨论怎么样用R实现以及提取我们需要的特征: 用R实现PCA有多个方法: prcomp() and princomp() [built-in R stats package], PCA() [FactoMineR package], dudi.pca() [ade4 package], and epPCA() [ExPosition package]
生信编程日常
2020/04/01
1.9K0
R实现PCA降维
人工智能大模型会以为是错误的PCA图
我们这个代码使用了十几年了,一直没有问题,我随手处理了一个表达量芯片数据集:5 healthy tissue samples, 9 DCIS and 5 invasive ductal carcinomas were analysed.
生信技能树
2024/11/21
620
人工智能大模型会以为是错误的PCA图
推荐阅读
相关推荐
ggplot2画点和分组椭圆展示主成分分析(PCA)结果的简单小例子
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验