如何进行聚类可视化_simplifyEnrichment,一个对GO富集结果进行聚类和可视化的工具...

simplifyEnrichment是一个R包,专门用于GO富集分析结果的简化和可视化。通过计算GO间的相似性,采用binary cut方法将GO划分到类别中,便于理解大量富集功能。该工具利用word cloud展示GO cluster,提供直观的注解,并与其他聚类方法对比,展示其优势。
摘要由CSDN通过智能技术生成

在前一篇博文中,我介绍了我的一个新的Bioconductor包cola,在这篇博文中,我继续介绍另一个新的R包simplifyEnrichment。Bioconductor上的链接为https://bioconductor.org/packages/simplifyEnrichment/,论文链接为https://www.biorxiv.org/content/10.1101/2020.10.27.312116v1。

对基因的功能富集分析是生物信息学中的一个基本的分析方法,通常用户会得到成百上千个显著富集的功能。那么下一步就是如何将这成百上千个功能减少到一个适当的值,这样用户可以很方便的阅读,并且不会丢失重要的信息。

simplifyEnrichment主要针对于GO富集分析的结果,为了对富集出来的GO列表进行简化,我们首先要得到GO和GO之间的相似性,然后基于此,把GO划分到几个类中。一般来说,我们用基于语义学的GO相似性度量,例如使用GoSemSim包,在得到GO相似性矩阵后,simplifyEnrichment提供了一个新方法,称之为binary cut,用来对GO相似性矩阵进行划分。

下图是一个对GO相似性矩阵进行划分后的结果,同时对每个GO cluster,我使用word cloud作为对应的annotation,这样可以很容易的知道每个GO cluster所对应的功能。

在R语言中,使用clusterProfiler对水稻的基因进行GO富集分析的步骤如下: 1. 首先需要安装clusterProfiler包,可以使用以下命令进行安装: ```R install.packages("clusterProfiler") ``` 2. 导入所需要的数据,包括水稻基因的注释信息和差异表达基因的信息。可以使用read.table函数或read.csv函数将数据导入到R中。 3. 对基因进行聚类分析并进行差异表达基因筛选,得到差异表达基因列表。 4. 将差异表达基因列表转换成基因符号的格式,例如: ```R gene.list <- c("LOC_Os01g01010", "LOC_Os01g01020", "LOC_Os01g01030", "LOC_Os01g01040", "LOC_Os01g01050", "LOC_Os01g01060", "LOC_Os01g01070", "LOC_Os01g01080", "LOC_Os01g01090") ``` 5. 进行GO富集分析,使用enrichGO函数,例如: ```R library(clusterProfiler) ego <- enrichGO(gene = gene.list, OrgDb = "org.Osativa.eg.db", ont = "BP", pvalueCutoff = 0.05, qvalueCutoff = 0.05, keyType = "SYMBOL") ``` 在这个例子中,使用了org.Osativa.eg.db数据库作为注释数据库,ont参数指定了GO的分支,这里选择了生物过程(BP)分支;pvalueCutoff和qvalueCutoff参数指定了显著性水平的阈值;keyType参数指定了基因列表的格式,这里选择了基因符号(SYMBOL)格式。 6. 可以使用ggplot2包中的函数将GO富集分析结果可视化,例如: ```R library(ggplot2) dotplot(ego, showCategory = 20) ``` 7. 最后保存GO富集分析结果,可以使用write.csv函数将结果保存到CSV文件中,例如: ```R write.csv(as.data.frame(ego), "GO_enrichment_results.csv") ``` 以上就是使用clusterProfiler对水稻基因进行GO富集分析的步骤。需要注意的是,在进行GO富集分析之前,需要对基因的注释信息和差异表达基因的筛选进行仔细的处理和质控。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值