在前一篇博文中,我介绍了我的一个新的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所对应的功能。

simplifyEnrichment的使用方法也很简单,用户提供一个GO列表,使用GO_similarity()函数计算相似性矩阵,然后使用simplifyGO()对GO进行聚类并生成图。

library(simplifyEnrichment)
mat = GO_similarity(go_id)
df = simplifyGO(mat)

对GO相似性矩阵进行聚类看似是一个简单的问题,其实在实践中会存在几个问题,使得某些相似GO无法被聚在一起,或者一个较大的GO类中的异质性还是很高。下面一张图显示了一些不同的聚类方法对同一个GO相似性矩阵进行划分的结果,可见,一些方法生成了太多的聚类(如第一行第三列),而另外一些方法无法将大的聚类划分为更小的聚类(如第三行第二列)。相比而言,binary cut (第一行第一列)能够很好的将GO划分为类,并且同时能够划分出大的聚类和小的聚类。

GO、GSEA富集分析一网打进

一个R包完成单细胞基因集富集分析 (全代码)

无需写代码的高颜值富集分析神器

这个只需一步就可做富集分析的网站还未发表就被CNS等引用超过350次

往期精品(点击图片直达文字对应教程)

后台回复“生信宝典福利第一波”或点击阅读原文获取教程合集

(请备注姓名-学校/企业-职务等)

simplifyEnrichment,一个对GO富集结果进行聚类和可视化的工具相关推荐

  1. Nature Methods | TooManyCells:单细胞聚类和可视化方法

    2020年3月2日宾夕法尼亚大学的Gregory W. Schwartz等研究人员在nature methods上发表了题为TooManyCells identifies and visualizes ...

  2. R语言层次聚类(hierarchical clustering):数据缩放、PCA聚类结果可视化、fpc包的clusterboot函数通过bootstrap重采样的方法评估hclust层次聚类的稳定性

    R语言层次聚类(hierarchical clustering):数据缩放.PCA聚类结果可视化.fpc包的clusterboot函数通过bootstrap重采样的方法评估hclust层次聚类的稳定性 ...

  3. R语言层次聚类(hierarchical clustering):特征缩放、抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员)、基于主成分分析的进行聚类结果可视化

    R语言层次聚类(hierarchical clustering):特征缩放.抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员).基于主成分分析的进行聚类结果可视化 ...

  4. 层次聚类定义、层次聚类过程可视化、簇间距离度量、BIRCH、两步聚类、BIRCH算法优缺点

    层次聚类定义.层次聚类过程可视化.簇间距离度量.BIRCH.两步聚类.BIRCH算法优缺点 目录

  5. GMM / MoG 聚类 Matlab 可视化 实现

    GMM / MoG 聚类 Matlab 可视化 实现 GMM介绍 EM进行参数求解 GMM动态可视化 GMM的Matlab动态可视化代码 参考书籍:<计算机视觉 模型.学习和推理> GMM ...

  6. R语言中聚类过程 可视化

    今天给大家介绍一款进行聚类分析结果可视化的工具clustree.K-mean聚类大家都了解,是可以对优化的K进行选择的算法,那不是最优的k具体情况是否我们也可以进行展示出来,供大家进行更细致的评估?今 ...

  7. 基于Jupyter 完成聚类输出可视化效果+Excel数据处理输出分布饼图

    基于Jupyter 完成聚类输出可视化效果+Excel数据处理输出分布饼图 一.根据计科18大类学生的成绩数据(选取两个特征:1.平均成绩GPA: 2.面向对象程序设计成绩),将计科18大类学生分成 ...

  8. 赠你一只金色的眼 - 富集分析和表达数据可视化

    GOplot包介绍 GOplot包用于生物数据的可视化.更确切地说,该包将表达数据与功能分析的结果整合并进行可视化.但是要注意该包不能用于执行这些分析,只能把分析结果进行可视化.在所有科学领域,由于空 ...

  9. 富集分析和基因表达花样可视化

    GOplot包介绍 GOplot包用于生物数据的可视化.更确切地说,该包将表达数据与功能分析的结果整合并进行可视化.但是要注意该包不能用于执行这些分析,只能把分析结果进行可视化.在所有科学领域,由于空 ...

最新文章

  1. c++面向对象高级编程 学习二 带指针的类
  2. 【计算机组成原理笔记】计算机的基本组成
  3. OCP 12c最新考试原题及答案(071-4)
  4. 无锁并发和无等待并发的对比分析
  5. Atitit  记录方法调用参数上下文arguments
  6. mybatis 多数据源_SpringBoot+Mybatis配置多数据源及事务方案
  7. 珍大户《认知世界的经济学》学习笔记 -- 第17课 影响消费者的因素 -- 色彩、冷暖、秩序
  8. 谷歌字体 Google Fonts
  9. 【一个挺蠢的小东西= =】页面展示富文本编辑器的图片的适配尺寸问题
  10. 六轴机器人直角坐标系建立_六自由度机械手的坐标建立及运动学分析
  11. 模拟滑动窗口协议算法C语言,滑动窗口协议模拟程序.docx
  12. 计算机检索系统常用的运算符,计算机信息检索过程中常用的检索表达式 计算机信息检索系统.doc...
  13. 关于企业邮箱域名备案方法
  14. 实现子弹自动向前运动 定时器 移动精灵 精灵释放
  15. Tensorflow slim库
  16. 从微软官网下载VS离线安装包的方法VS2017,VS2019
  17. 你需要了解的 http 协议基础知识
  18. 为什么你会觉得苹果已无创新?耶稣已死,商人掌舵!!
  19. 浅谈设计模式在iOS开发实战项目中的应用
  20. 买服务器做网站 镜像选什么,如何做网站镜像,网站镜像方法

热门文章

  1. 【离散数学】欧拉图与汉密尔顿图
  2. 【Servlet】监听器技术
  3. 【Java】睡眠排序
  4. [.NET领域驱动设计实战系列]专题二:结合领域驱动设计的面向服务架构来搭建网上书店...
  5. Android 基础(十三) shape
  6. apacheBench对网站进行压力测试
  7. OD使用教程13(迷途) - 调试篇13
  8. 通俗讲解【重定向】及其实践
  9. 阿里研究院副院长:数字化是否可以买来?
  10. 好图表的标准是什么?手把手教你用GLAD原则优化一张看板