R语言:clusterProfiler进行GO富集分析和Gene_ID转换

Python038

R语言:clusterProfiler进行GO富集分析和Gene_ID转换,第1张

ID转换用到的是 bitr() 函数,bitr()的使用方法:

org.Hs.eg.db包含有多种gene_name的类型

keytypes() :keytypes(x),查看注释包中可以使用的类型

columns() :类似于keytypes(),针对org.Hs.eg.db两个函数返回值一致

select() :select(x, keys, columns, keytype, ...) eg.

函数enrichGO()进行GO富集分析,enrichGO()的使用方法:

举例:

前面我给大家详细介绍过

☞GO简介及GO富集结果解读

☞四种GO富集柱形图、气泡图解读

☞GO富集分析四种风格展示结果—柱形图,气泡图

☞KEGG富集分析—柱形图,气泡图,通路图

☞ DAVID GO和KEGG富集分析及结果可视化

也用视频给大家介绍过

☞ GO和KEGG富集分析视频讲解

最近有粉丝反映说,利用clusterProfiler这个包绘制GO富集分析气泡图和柱形图的时候,发现GO条目的名字都重叠在一起了。

气泡图

柱形图

这个图别说美观了,简直不忍直视。经过我的认真研究,发现跟R版本有关。前面我给大家展示的基本都是R 3.6.3做出来的图。很多粉丝可能用的都是最新版本的R 4.1.2。

我们知道R的版本在不停的更新,相应的R包也在不停的更新。我把绘制气泡图和柱形图相关的函数拿出来认真的研究了一下,终于发现的症结所在。

dotplot这个函数,多了个 label_format 参数

我们来看看这个参数究竟是干什么用的,看看参数说明

label_format :

a numeric value sets wrap length, alternatively a custom function to format axis labels. by default wraps names longer that 30 characters

原来这个参数默认值是30,当标签的长度大于30个字符就会被折叠,用多行来展示。既然问题找到了,我们就来调节一下这个参数,把他设置成100,让我们的标签可以一行展示。

是不是还是原来的配方,还是熟悉的味道

同样的柱形图,我们也能让他恢复原来的容貌。

关于如何使用R做GO和KEGG富集分析,可参考下文

GO和KEGG富集分析视频讲解

GO富集分析原理简介和DAVID的GO富集分析方法操作演示

    寻找差异表达的基因并挖掘它们可能的功能,是我们进行RNA测序的最主要目的。很明显,这些差异的基因必然与功能改变密切相关,例如,比较患病个体与正常个体的组织表达谱,不难想到这些表达显著改变的基因参与了疾病或免疫相关的生物学过程、信号通路等,基因表达水平的失调与疾病肯定密不可分。

    我们平时看RNA-seq相关的文献时,文章中在鉴定了差异表达的基因后,大都会在随后承接几句关于这些失调基因所涉及通路的描述。例如,讨论这些差异基因主要映射到哪些GO或KEGG分类条目中,以说明基因表达的改变会导致哪些调控途径原有功能失调,进而与表型联系起来。通常称这种分析为GO、KEGG富集分析。

    本节视频教程,就让我们带大家学习什么是GO、KEGG富集分析,它们的主要原理是什么,并简单展示使用DAVID进行差异表达基因GO富集分析的操作过程。

视频教程:

附:bilibili超清视频链接: https://www.bilibili.com/video/BV1ca4y1v7Mw/