#GO柱状图绘制教程
#激活r包
library(GOplot)
  1. 数据准备与说明
    1.1 查看教程中给的数据
#查看教程中的数据
write.csv(EC$david,"EC-david.csv")
write.csv(EC$genelist,"EC-genelist.csv")

数据说明

EC$david为GO富集分析结果,包括174条显著富集的GOterm,第一列为序号,第二列为GO富集分析的类型,第三列为GOterm的ID,第四列为GOterm的名称,第五列使富集到这个term上的具体的基因(全大写),第六列使富集的显著性(校正P值)。

数据的EC$genelist为筛选出的差异表达的数据集,包括校正p值小于0.05的2040条基因,第一列为序号,第二列为基因名(首字母大写),第三列为差异倍数,第四列暂不清楚,第五列暂不清楚,第六列为P值,第七列为校正P值,第八列暂不清楚。

#生成绘图对象
circ <- circle_dat(EC$david, EC$genelist)
#查看一下生成的用于绘图的数据格式
write.csv(circ,"circ-david+genelist.csv")

可以看到,circle_dat函数将david和genelist两个数据集进行了整合,将david数据的每个富集到goterm里面的基因拆开了,然后生成了counts列,为每个基因更具genelist里的信息添加了差异倍数、校正p值以及自动计算出zscore值(具体计算方法在帮助文档里)。前面genelist里面那些不清楚的数据用不到。总共生成了9804行,这是因为有很多基因富集到了不同的term中。

#生成一个简单的barplot
GOBar(subset(circ, category == 'BP'))#只生成BP的富集结果

##根据术语的类别来修饰barplot
GOBar(circ, display = 'multiple')

# 添加标题和改变颜色
GOBar(circ, display = 'multiple', title = 'Z-score coloured barplot', zsc.col = c('yellow', 'black', 'cyan'))


更改完颜色后反而觉得变丑了,GOterm的名字也不清楚,具体的颜色可以更改代码个性化一下。

好了,下面上一下自己的数据。
先按照上面数据的格式把表头改好(懒得指定了免得报错),然后不需要的数据给删掉(不删应该也行)。
然后运行上面代码,发现出来的图是这样的。

很奇怪,很多富集到的通路直接消失了,因为这个柱状图是以校正p值给的y轴,z-score给的x轴,所以先关注数据集中这两个值有没有问题。

发现一个term里面只要有一个基因的差异倍数的值缺失就会导致整个term的Zscore值缺失。查看一下zscore值得计算方法。


这个值是由上调基因个数减下调基因个数再除总数的开根。我们可以看到数据集中LBSP基因得差异倍数是缺失的,这可能是由于实验组或对照组该基因完全不表达使得计算差异倍数时报错。进而导致这一系列的报错。为了规避这种错误,可只计算有表达的那一组的表达量的对数。(或者直接给±1就好了,因为本身这个公式就只计算上调或者下调的个数)

还有一个问题是,david默认的是以P小于0.1进行富集的,也就是说,校正p值取对数直接约等于没有了。

问题解决,把校正p值小于0.05的term删了

GOplot教程-GO柱状图(有点丑)-数据整理问题汇总相关推荐

  1. 5菜鸟教程_excel图文教程:应用PQ工具进行数据整理

    编按:哈喽,大家好!在日常工作中,我们经常会与数据打交道,那整理数据自然也是一件习以为常的事.但就是这么一件天天都会做的事,却让很多人压力山大,这不,又有一位小伙伴遇到问题了,我们赶紧来看看吧!学习更 ...

  2. excel图文教程:应用PQ工具进行数据整理

    ​今天的问题来自一位群友的求助,是一个数据整理方面的问题,数据源如图所示: 这是一份销售数据,实际有很多个分店的数据,现在需要将这个数据源整理成标准的表格形式: 面对这种诉求,你要用公式来处理不是不行 ...

  3. letswave7中文教程3:脑电数据预处理-ICA去除伪影

    目录 ICA/BSS的理论与模型 第5步:计算ICA矩阵 第6步:识别伪影成分 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群:941473018 ICA/BSS的理论与模型 ...

  4. letswave7中文教程2:脑电数据预处理-通道位置分配

    目录 第1步:通道位置分配 第2步:删除不良通道 第3步:滤波处理 第4步:坏电极插值 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群:941473018 原始的脑电图信号是有 ...

  5. 机器学习项目中的数据预处理与数据整理之比较

    要点 在常见的机器学习/深度学习项目里,数据准备占去整个分析管道的60%到80%. 市场上有各种用于数据清洗和特征工程的编程语言.框架和工具.它们之间的功能有重叠,也各有权衡. 数据整理是数据预处理的 ...

  6. Python股票分析系列——数据整理和绘制.p2

    Python股票分析系列--数据整理和绘制.p2 欢迎来到Python for Finance教程系列的第2部分. 在本教程中,我们将利用我们的股票数据进一步分解一些基本的数据操作和可视化. 我们将要 ...

  7. 数据科学和人工智能技术笔记 十九、数据整理(上)

    十九.数据整理(上) 作者:Chris Albon 译者:飞龙 协议:CC BY-NC-SA 4.0 在 Pandas 中通过分组应用函数 import pandas as pd# 创建示例数据帧 d ...

  8. 视频教程-Python数据分析与案例教程:分析人口普查数据-Python

    Python数据分析与案例教程:分析人口普查数据 多年互联网从业经验: 有丰富的的企业网站.手游.APP开发经验: 曾担任上海益盟软件技术股份有限公司项目经理及产品经理: 参与项目有益盟私募工厂.睿妙 ...

  9. 数据整理与命令行环境

    数据整理 正则表达式 介绍 正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串.将匹配的子串替换或者从某个串中取出符合某 ...

最新文章

  1. 独家 | 准确度VS速度——数据科学家能从搜索中学到什么?(附链接)
  2. db2表结构导出导入,数据库备份
  3. python中的open函数
  4. XNA2.0 API --- ViewPort.Unproject出错啦
  5. rust布料怎么弄_布料“难弄”,你需要从这六方面解决!
  6. cad服务器手动改自动,几百块就能手动改自动? 怎样省钱换来方便
  7. label y 训练集测试集x_训练集、测试集 train_test_split
  8. vasp如何杀掉任务_如何优雅地在学堂路上骑着车跑代码
  9. Safari 搜寻引擎被 Yahoo 绑架,试试这 4 种解决方法
  10. 你还在期待彩票中奖么?
  11. SPSSAU进行方差分析
  12. 赵鹏的《大师之路》教程
  13. IDEA翻译插件出现报错: 更新 TKK 失败,请检查网络连接解决
  14. circos 可视化手册- heatmap 篇
  15. Google Chrome 浏览器——隐藏功能及快捷键
  16. 内外网同时使用之添加路由
  17. 肠道核心菌属——优/真杆菌属(Eubacterium),你为什么要关心它?
  18. rails--图片的使用
  19. 系统日志Logrotate配置
  20. 转: 测试工具LoadRunner和OpenSTA比较分析

热门文章

  1. Ant Design of Vue中a-form-model多行表单对齐和验证
  2. 多模OM1、OM2、OM3和OM4光纤,单模OS1,OS2
  3. 计算机英语构词法,计算机专业英语的构词方法
  4. 微信小程序自适应深色主题DarkMode源码
  5. 解决Tabby终端使用zsh主题字体无法识别问题
  6. 设计模式六大原则之--开闭原则(OCP)
  7. 庄子心得06:总有路可走
  8. 车载网络测试 - 车载以太网 - ARP详细解析
  9. yaml及使用PyYaml操作yaml文件详解
  10. Ray tracing 光线追踪 之 embree ,从入门到精通 01 安装与体验