美文网首页R随笔-生活工作点滴R语言训练
GOplot弦图展示clusterProfiler富集结果的变通

GOplot弦图展示clusterProfiler富集结果的变通

作者: 道道_a935 | 来源:发表于2019-07-08 21:42 被阅读146次

原文链接:  https://bioinfohome.com/index.php/2019/07/08/goplot-01/

示例数据:gene_list.txt;示范代码:GOplot_bioinfohome.R下载链接位于上述原文末尾。

GOplot包是用于GO富集结果可视化的R包,尤其其中的弦图。遗憾的是,标准的GOplot需要FC值。实际生信分析中,我们只有一列筛选而得的基因。这个时候,该如何变通呢……

操作环境:预先配置的 Windows_7_x64_R虚拟机包
R软件版本:R x64 3.5.0
示范代码:GOplot_bioinfohome.R

GOplot输入文件,包含三个,GO富集结果、基因列表(包含logFC)、GO条目。如果,我们处理的数据不包含logFC,或者不想使用logFC。我们可以自己生产随机数代替。最后的pdf文件,借助AI绘制软件,将logFC的图标删除即可得到漂亮的弦图。

第一步,准备输入数据

输入数据非常简单,就是一列基因名,存放在 gene_list.txt 中。 这也符合相当一部分生信的应用场景。

第二步,加载R包,并使用clusterProfiler进行GO富集。

library(GOplot)
library(stringr)
library(org.Hs.eg.db)
library(clusterProfiler)

#需要加载四个R包,如果基因物种不是人org.Hs.eg.db,需要加载对应物种的参考注释。

gene_symbol<-read.table(file="gene_list.txt",header=T)$SYMBOL

entrez_id <- bitr(gene_symbol, fromType="SYMBOL", toType=c("ENTREZID","ENSEMBL"), OrgDb=org.Hs.eg.db)

ego_all <- enrichGO(gene =entrez_id$ENTREZID,

OrgDb        = org.Hs.eg.db,

ont          = "ALL",

pAdjustMethod = "BH",

pvalueCutoff  = 0.05,

readable = TRUE,

pool = TRUE)

# 这里富集参数ont选用 ALL为示范。

第三步,构建GOplot的输入文件。

GOplot的输入文件包含terms,genes,process。

terms: 是一个数据框,包含的字段:Category,ID,term,Genes,adj_pval;

genes:基因名加logFC( logFC 随机生成);

process:GO的条目描述;

GO=ego_all[1:12,c(1,2,3,9,7)]

#因为GO富集结果非常多,不可能也不需要全部显示,一般选取前几行,这里取12,也可以设定为其他值

GO$geneID=str_replace_all(GO$geneID,"/",",")

#这里替换富集条目中基因一栏的分隔符为逗号,这是GOplot默认的。

names(GO)=c("Category","ID","term","Genes","adj_pval")

#重新命名数据框的字段名,这些都是固定的,不可更改

gene=data.frame(ID=gene_symbol,logFC=rnorm(length(gene_symbol),mean=0,sd=2))

#生成输入数据框

gene=data.frame(ID=gene_symbol,logFC=rnorm(length(gene_symbol),mean=0,sd=2))

#随机生成相同数量的正负小数,充作logFC

第四步,使用GOplot作出弦图,并导出pdf,使用AI,微调

circ <- circle_dat(GO,gene)

chord <- chord_dat(data = circ, genes = gene, process = GO$term)

#GO$term就是富集的GO条目描述

GOChord(chord, space = 0.02, gene.order = 'logFC', gene.space = 0.25, gene.size = 5)

相关文章

网友评论

    本文标题:GOplot弦图展示clusterProfiler富集结果的变通

    本文链接:https://www.haomeiwen.com/subject/adrzhctx.html