欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

原始信件分析 11:如何简化 GO 富集结果

最编程 2024-04-08 10:22:09
...

拿到一个感兴趣的基因集合时,最常想到的是对它们做富集分析,看一下这些基因可以显著富集到哪些功能。GO富集是最为常用的方法之一,但是有些时候我们会得到非常多的结果,其中含有很大的冗余。

前一篇推送分享的文献中,作者也遇到了这个问题,所以在方法部分特意写明对GO富集的结果做了简化。今天的推送聚焦于如何简化GO富集的结果。

GO富集中结果的冗余性

上图是某次GO富集中“MF”的结果,一共富集到9个显著的GO term,其中存在部分术语是相近的,如7、8、9。

简化方法1:R-simply函数

方法一:clusterProfiler包的simplify函数

我们可以利用clusterProfiler包的simplify函数对enrichGO的输出结果进行简化。以上代码是Y叔给出的(https://rdrr.io/bioc/clusterProfiler/man/simplify-methods.html)。

Cutoff设置为0.7会把9个结果简化成6个,是上图中红色框标记的。若设置成0.3,则只剩黄色框标记的三个。

简化方法2:树状图

方法二:树状图

树状图并没有减少最终得到的GO term,而是依赖于pairwise_termsim()函数计算的丰富项的成对相似性,默认情况下使用 Jaccard 的相似性指数 (JC)来对GO term进行聚类。

默认聚合方法treeplot()是ward.D,用户可以通过hclust_method参数指定其他方法(例如,’average’、’complete’、’median’、’centroid’等。

treeplot()函数会将树切割成几个子树(由nCluster参数指定(默认为 5))并使用高频词标记子树。

参考链接:https://yanzhongsino.github.io/2022/04/28/bioinfo_enrichment_clusterProfiler.visualization/

简化方法3:simpleEnrichment包

方法三:simpleEnrichment包

本质上也没有减少GO term,而是对GO term根据相似度聚类,然后用词云图展示每个cluster的功能。