原始信件分析 11:如何简化 GO 富集结果
拿到一个感兴趣的基因集合时,最常想到的是对它们做富集分析,看一下这些基因可以显著富集到哪些功能。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的功能。
下一篇: 如何下载感兴趣的基因组(GO 数据库)