分享

用户插件 | 神器!GO/KEGG富集分析与可视化 - 「GO,KEGG.shiny」

 生信药丸 2023-05-09 发布于贵州

早前在社群有遇到一个用户问道插件制备问题,认为有趣,故邀请投稿。前两日收到插件投稿,认为其贡献的插件功能强大,也一直是我希望有人去做的一个事情。TBtools中实现的基因集功能富集分析和可视化我自2018年后可能就没更新过,主要原因是时间精力有限。但相关功能其实有很多R包可以完美实现,如果做成 shinyApp,那就更好了。尤其对于湿实验的朋友或者一心关注生物学问题探索的朋友来说。非常开心,收到这个插件以及投稿。我们也期望,这位朋友以及其他朋友多多贡献插件,让20w+TBtools用户能够更为方便的完成生信数据下游分析工作。

-- CJ-陈程杰

思路来自于:TBtools | 零基础掌握WGCNA共表达网络分析 - 「WGCNAshiny by Warlock」等老师的文章。

目前只适合下面这些物种做GO,KEGG富集分析,具有一定的局限性。

目前只适合下面这些物种做GO,KEGG富集分析,具有一定的局限性。具体物种的数据库,可以从下面的网站找到
GO物种缩写索引表:
http://bioconductor.org/packages/release/BiocViews.html#___OrgDb
KEGG物种缩写索引表:
https://www.genome.jp/kegg/catalog/org_list.html
其中GO表里只有19个物种,KEGG表里有大部分的物种,说明KEGG其实能做更多的物种。
使用 GO,KEGG.shiny 插件
GO,KEGG.shiny 插件本身其实是一个 Shiny 程序。R插件的界面由 TBtools 主要完成。非常方便。点击「Start」。

可以看到界面变化,随后等待两分钟(GO,KEGG,shiny插件依赖较多,需要等待加载)。加载完成,即可看到Shiny 插件弹出的网页接口。随后所有分析在其上开展(注:TBtools可以最小化,但不要关闭)

此处,准备了一个基因名字(gene_symbol)的文件,支持csv,xlsx,txt输入,基因的ID转换可以在网上找教程,我一般用的是ensemble数据库的BioMart。

下面用拟南芥的和鸡的基因做个例子

拟南芥的gene_symbol文件

鸡的gene_symbol文件

开始的时候,请先调到对应物种,再输入文件!否则如果输入的基因名字在别的基因库中没有。此时界面就会卡住,需要刷新新做。

物种不对应会出现的问题

先以拟南芥为例,先调到拟南芥的GO号(At tair)和KEGG(ath)号。

然后拖入文件,等一段时间,会看到富集的图。然后就能找到

目前可以调整富集分析的pvalueCutoff和qvalueCutoff值,图的宽和高,字号大小。

    pvalueCutoff是在假设检验中常用的一个参数,用于描述检验结果是否具有统计显著性。在富集分析中,p-value表示一个富集分析结果与随机事件产生该结果的概率大小。p-value越小,代表该结果的富集程度越显著。

qvalueCutoff是用于控制错误发现率(FDR)的一种统计指标,它定义为已知的p-value中,期望的FDR所达到的最小值。在富集分析中,qvalueCutoff通常用于控制多重检验的误差率,例如使用Benjamini-Hochberg校正方法来调整p-value。qvalueCutoff越小,代表该结果的富集程度经过多重检验校正后,依然保持显著。

因此,在进行富集分析时,pvalueCutoff和qvalueCutoff值分别用于筛选结果的显著性水平。通常情况下,我们会将pvalueCutoff和qvalueCutoff设置为较小的值,以筛选出显著的富集信息,从而较好地解释生物学上的差异。但是,在具体应用时,pvalueCutoff和qvalueCutoff的具体设置需要结合具体的研究问题、数据分析流程及其统计方法进行考虑。

   所以一般按照默认0.05,如果不出图就适当调大,确保结果可视化。 

这样的错误请适当调大p值q值,确保结果可视化

想要保存图片,直接在浏览器里,鼠标右键保存即可,保存的都是完整的图。

简单下载图的方法

也可以下载富集的文件,操作如下图。

这个文件的内容是会随着pvalueCutoff和qvalueCutoff的改变而动态变化的。

下载富集的文件

下面是我想用这个和网站做的做个对比,看看这个是否可靠。

因为我想要与网站上的GO,KEGG图做对比,而网站上的没有拟南芥,那么接下来我用鸡的基因来做,最后和网页上的进行对比。

网站上做富集分析的界面

插件上的GO富集分析柱状图

   对比下方的网站的分析,因为横坐标不同,我的是count,用颜色来表示padjust网站上的是Enrichment score,用长度来表示padjust,殊途同归,我也可以多加一个类似网站的富集分析柱状图。

网站的GO富集分析柱状图

对比分析网站上的,差别也不是很大。

网站的GO富集分析文件(左)与插件上的GO富集分析文件(右)

对于KEGG也基本一样,可能用的数据库不同,对比还是有区别的,这点需要注意。

目前:GO能做出5种图,如下。

KEGG能做出4种图

GO,KEGG,shiny优势主要是能动态的改变富集分析图的一些值,物种更多,能动态预览图片,文件,使用者可能会对GO,KEGG有更深的认识。

后续,因为没有对所有的情况一一验证,所以可能有很多bug,我会注意修改,然后准备添加GSEA富集分析的模块,增加更多的图的类型,并且使每一个图能改变的参数更多等等。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多