在前一篇博文中,我介绍了我的一个新的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. Oh My Zsh终端工具
  2. mysql主从复制(master-slave)_mysql主从复制------Master-Slave搭建及注意事项
  3. html怎么设置log区,javlog
  4. Origin绘制上面和右边边框
  5. jsp 9对象4作用域
  6. redis深度历险 pdf_程序员面试必备精选文档:Redis+Ng+Tomcat+并发编程+Spring系列
  7. java mvc mvvm_从MVC到MVVM(为什么要用vue)
  8. Oracle活动会话历史(ASH)及报告解读
  9. Diameter协议学习笔记一(协议介绍)
  10. java能写前端么_java程序员会写前端吗
  11. Linux下iwconfig权限,Linux中用iwconfig配置wireless-tools
  12. c++把字符串逆序输出
  13. 【laravel5.7】第一个Laravel接口之中央气象台天气接口
  14. 什么是51单片机最小系统?
  15. 基于回声状态网络(ESN)的时间序列预测
  16. 从苏宁电器到卡巴斯基第35篇:番外篇——晒一晒病毒分析师的桌面(下)
  17. 不用远程软件,校园网电脑之间如何远程连接
  18. 菩提本无树,明镜亦非台,本来无一物,何处惹尘埃
  19. 怎么用照片制作MV视频?把照片合集做成MV视频的软件,实用制作教程!
  20. 无人驾驶--实时定位与地图构建(SLAM)仿真与实战(附源码)

热门文章

  1. 作者:王融,中国信息通信研究院互联网法律中心副主任、高级工程师。
  2. rabbitmq rpc
  3. 【软件工程】计算资源
  4. 长方体工艺品の切割(洛谷P5729题题解,Java语言描述)
  5. 【算法分析与设计】内排序算法归纳
  6. 《程序员代码面试指南》第二章 链表问题 反转部分单向链表
  7. cordova+vue 项目打包成Android(apk)应用
  8. 第123天:移动web开发中的常见问题
  9. Element type quot;Resourcequot; must be followed by either attribute specifications, quot;gt;qu...
  10. mongodb的更新语句