• 摘要

    • 之前写过一篇文章,对clusterProfiler常用注释包进行简单的整理分类2021.05.17【R语言】丨clusterProfiler注释表——KEGG/GO enrich富集图专用_穆易青的博客-CSDN博客。然而在遇到一个原核转录组项目想使用大肠杆菌注释包的时候却遇到了报错,经过一番查阅和测试。终于能够注释大肠杆菌,得到GO/KEGG富集图,在这里将整个过程做个梳理。
  • 环境与方法
    • R version 3.6.1
    • Bioconductor version 3.10
    • package:
      • clusterProfiler
      • org.EcK12.eg.db(E coli strain K12,官方默认包)
      • org.EcSakai.eg.db
  • 使用问题
    • org.EcK12.eg.db与常用的org.Hs.eg.db以及org.Mm.eg.db不同。这个包不能通过require("clusterProfiler")直接使用library(org.Hs.eg.db),需要单独安装。因此我们需要先安装注释包,再进行注释。
  • 使用代码
  • require("clusterProfiler")
    require("topGO")
    require("Rgraphviz")
    BiocManager::install("org.EcK12.eg.db") #或者BiocManager::install("ecoli2.db")
    library(org.EcK12.eg.db) #读取注释包
    
  • GOenrich以BP为例,CC,MF下同
  • ego <- enrichGO(
    gene = data$V1,
    OrgDb = org.EcK12.eg.db,
    keyType = 'SYMBOL',
    ont = "BP", #CC、MF类型在这里进行设置
    pAdjustMethod = "BH",
    pvalueCutoff = 0.05, #如果图像空白或者富集点较少可以适当调整P值和Q值范围
    qvalueCutoff = 0.05
    )
    write.csv(ego,file = "BP_results.csv")
    pdf(file="BP_dotplot.pdf")
    dotplot(ego,font.size=12) #可以补充width和height参数设置长宽,建议MF类型可以适当增加宽度。
    dev.off()
    pdf(file="BP_topGO.pdf")
    plotGOgraph(ego)
    dev.off()
  • KEGGenrich
  • library(DOSE)
    data=read.table("../diffid.list",header = F)
    gene<-as.vector(data$V1)
    gene_list <- mapIds(org.EcK12.eg.db, keys = gene,
    column = "ENTREZID", keytype = "SYMBOL" )
    kk <- enrichKEGG(gene_list, organism="eco", #重点!,这里需要匹配物种简称,查询链接KEGG Organisms: Complete Genomes
    keyType = "ncbi-geneid",
    #pvalueCutoff=0.05, #P值和下面的Q值都可以调整,同GOenrich
    pAdjustMethod="BH",
    qvalueCutoff=0.05
    )
    head(summary(kk))
    pdf(file="kegg.enrich.pdf")
    dotplot(kk)
    dev.off()
  • 需要注意的是,在我使用的几个注释包里,除了org.Hs.eg.db是要求DE_gene全部大写外,org.Mm.eg.db是要求首字母大写,而org.EcK12.eg.db则是末尾字母大写。当然,如果你的注释文件是官方的,那么格式应该是能够识别的。如果是自己生成的gff文件,那么生成的gene_name最好处理一下。如果格式有问题,程序会反馈提醒
  • 结果展示
    • 使用head(summary(kk)) 命令,如果能够看到富集的ID,并且前缀是eco,那么说明大肠杆菌已经注释成功了。我们再来看看富集图片
    • 这张图我把阈值设置得比较高,所以富集出来得Q值可能超过了0.05
  • 总结
    • 在梳理RNA-seq的过程中,自己也在不断地了解一些细节。不加思考一味重复,很容易会得到错误的结果.

2021.05.26【R语言】丨clusterProfiler注释大肠杆菌GO/KEGG富集图相关推荐

  1. R 实战 | 使用clusterProfiler进行多组基因富集分析

    R 实战 | 使用clusterProfiler进行多组基因富集分析 clusterProfiler这个包我就不再介绍了,网上关于用这个包做的基础的富集分析的教程已经非常多了,今天主要介绍一下使用co ...

  2. R语言可视化:散点图、散点图和折线图(line charts)、3D散点图、旋转3D散点图、气泡图、corrgram包可视化相关性矩阵、马赛克图( Mosaic plots)、hexbin、密度图

    R语言可视化:散点图.散点图和折线图(line charts).3D散点图.旋转3D散点图.气泡图.corrgram包可视化相关性矩阵.马赛克图( Mosaic plots).hexbin.密度图 目 ...

  3. R语言ggplot2可视化:绘制堆叠的密度图(Stacked Area Chart)

    R语言ggplot2可视化:绘制堆叠的密度图(Stacked Area Chart) 目录 R语言ggplot2可视化:绘制堆叠的密度图(Stacked Area Chart) #仿真数据 #绘制堆叠 ...

  4. R语言ggplot2可视化:使用ggrepel包在线图(line plot)的尾端那个数据点添加文本标签(text label)

    R语言ggplot2可视化:使用ggrepel包在线图(line plot)的尾端那个数据点添加文本标签(text  label) 目录

  5. R语言ggplot2可视化:通过水平半小提琴图(Horizontal Half Violin Plots)和抖动数据点( jittered data)可视化雨云图(Rain Cloud plots)

    R语言ggplot2可视化:通过水平半小提琴图(Horizontal Half Violin Plots)和抖动数据点( jittered data)可视化雨云图(Rain Cloud plots) ...

  6. R语言ggplot2可视化:自定义函数在箱图(boxplot)上添加分组样本个数(count)、分组均值(mean)、箱体填充色自定义、数据标签色彩自定义

    R语言ggplot2可视化:自定义函数在箱图(boxplot)上添加分组样本个数(count).分组均值(mean).箱体填充色自定义.数据标签色彩自定义 目录

  7. R语言ggplot2可视化:通过水平半小提琴图和抖动数据点可视化雨云图(Rain Cloud plots)、自定义雨云图中数据点的颜色(数据点的颜色和半小提琴图一致)

    R语言ggplot2可视化:通过水平半小提琴图和抖动数据点可视化雨云图(Rain Cloud plots).自定义雨云图中数据点的颜色(数据点的颜色和半小提琴图一致) 目录

  8. R语言ggplot2可视化:ggplot2可视化半小提琴图(Half Violin Plots)

    R语言ggplot2可视化:ggplot2可视化半小提琴图(Half Violin Plots) 目录 R语言ggplot2可视化:ggplot2可视化半小提琴图(Half Violin Plots)

  9. R语言ggplot2可视化:可视化分组的小提琴图(violin plot)并在分组小提琴内部嵌入箱图(box plot)

    R语言ggplot2可视化:可视化分组的小提琴图(violin plot)并在分组小提琴内部嵌入箱图(box plot) 目录

  10. R语言ggplot2可视化:可视化饼图分面图并在图中添加数据标签

    R语言ggplot2可视化:可视化饼图分面图并在图中添加数据标签 目录 R语言ggplot2可视化:可视化饼图分面图并在图中添加数据标签

最新文章

  1. VIEW登陆故障解决办法。
  2. zookeeper集群搭建设置
  3. PHP自学4——通过函数将数组数据输出到html的Table标签中(使用函数的例子)
  4. 手机屏幕坏了如何把手机里面的资料取出来_手机碎屏原来也有这么多讲究,早了解这几个方法就不会被坑了...
  5. javaScript内置对象简介
  6. TCP: SYN ACK FIN RST PSH URG
  7. URL在线编码/解码工具
  8. ubuntu开启客户端nfs服务_ubuntu16.04搭建nfs服务的方法
  9. 独家对话英伟达首席科学家:解码AI芯片战局
  10. matlab产生一个稀疏向量,Matlab中的稀疏矩阵向量乘法比Python快吗?
  11. Vue2+filter实现权限管理,使不同用户进入不同界面
  12. Vue组件(二)父组件、子组件通信/传值
  13. 元气骑士双人异地公网联机工具(仅支持双人、JAVA实现)
  14. XPath解析中的 'Element a at 0x5308a80'是什么
  15. 浅谈下载access数据库的攻与防
  16. layui图标大全,精心整理
  17. base64转图片,浏览器前面加
  18. Android Q行为变更
  19. 详细讲解网络协议:TCP和UDP什么区别?
  20. python框架django入门_Python高级进阶(一)Python框架之Django入门

热门文章

  1. android 点击按钮打开浏览器网页
  2. 2022年信息安全工程师上午真题及答案解析
  3. qtdesigner设计表格_Qt Designer下的一些基础操作
  4. C#实时判断串口连接状态
  5. RTF(rich textformat)富文本格式
  6. matlab灰色模型,MATLAB解灰色模型
  7. java数字转大写_java实现数字转大写的方法
  8. 21. 合并两个有序链表
  9. Java项目:Springboot校园报修管理系统
  10. 地类图斑代码大全_使用字段计算器对同一地类图斑自动编号(标记重复记录)...