前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >depth, bedgraph, bigwig之间的联系与区别

depth, bedgraph, bigwig之间的联系与区别

作者头像
生信修炼手册
发布2019-12-19 15:26:58
1.2K0
发布2019-12-19 15:26:58
举报
文章被收录于专栏:生信修炼手册生信修炼手册

欢迎关注”生信修炼手册”!

在chip_seq的分析结果中,经常会通过igvtools或者UCSC等基因组浏览器对样本的测序深度分布进行可视化,方便直观的比较样本间的差异,示意如下

比对基因组之后会产生一个bam文件,我们可以根据bam文件可以计算得到测序深度,所谓测序深度,指的是基因组每个bp的碱基上覆盖到的reads数目,samtools计算测序深度的用法如下

代码语言:javascript
复制
samtools depth input.bam > depth.txt

输出文件的内容如下

代码语言:javascript
复制
chr1    11714   1
chr1    11715   1
chr1    11716   1
chr1    11717   1
chr1    11718   1
chr1    11719   1

第一列为染色体,第二列为染色体上的每个碱基的位置,第三类为覆盖该位点的reads数目。以人类基因组为例,基因组大小约为3G, 如果在文件中记录每个位置上的测序深度,那么该文件的体积是非常大的,为了更加有效的记录测序深度的信息,科学家提出了两种新的文件格式,bedgraph和wiggle。

首先来介绍下bedgraph格式,这种格式实际上就是用窗口的方式代替原始的每个碱基的测序深度,文件内容可以分为两个部分

  1. track line
  2. data line

track line是首行的一句声明,内容如下

代码语言:javascript
复制
track type=bedGraph

用来声明文件格式,方便在UCSC基因组浏览器上进行展示,除了type属性外,还有很多其他的属性。具体参考以下链接

http://genome.ucsc.edu/goldenPath/help/bedgraph.html

data line记录每个窗口内的测序深度信息,通过bedtools可以产生bedgraph格式的输出,用法如下

代码语言:javascript
复制
bedtools  genomecov -ibam input.bam -bg > depth.bedgraph

输出内容如下

代码语言:javascript
复制
chr1    11873   12227   1
chr1    12612   12721   1
chr1    13220   14361   1
chr1    14361   14409   2
chr1    14409   14829   1
chr1    14969   15038   1

第二列和第三列列出了窗口的起始和终止位置,第四列是该窗口内的测序深度,从官网给的示意图也可以看出depth和begraph之间的区别

-d参数就是产生depth文件,-bg产生bedgraph文件,可以看到,软件将相同测序深度的连续碱基作为一个窗口。bedgraph在原始depth的基础上合并了相同测序深度的连续碱基,所以文件大小有所降低。

在bedgraph窗口计数的方式,人们又提出了wiggle格式以及对应的二进制bigwig格式,该格式的组成和bedgraph类似,也包含了track和data两部分,track内容示意如下

代码语言:javascript
复制
track type=wiggle_0

data line允许有以下三种方式

1. bed format

bed格式和bedgraph的data line类似,示意如下

代码语言:javascript
复制
chr19 59303500 59303800 1
chr19 59303800 59304100 2
chr19 59304100 59304400 3
chr19 59304400 59304700 4
2. fixedStep

示意如下

代码语言:javascript
复制
fixedStep chrom=chr19 start=59307401 step=300 span=300
1000
900
800
700

span指定窗口的长度,step指定步长,每一行代表该窗口内对应的数值。

3. variableStep

示意如下

代码语言:javascript
复制
variableStep chrom=chr19 span=150
59304701 10.0
59304901 12.5
59305401 15.0
59305601 17.5

span指定窗口的长度,第一列指定窗口的起始位置,第二列指定窗口内对应的数字。 同样一个bam文件,不同格式的文件大小如下

  1. bam 2.7G
  2. depth 55G
  3. begraph 550M
  4. bigwig 15M

从文件大小而言,bigwig是最小的,软件读取最为方便,使用的也最为广泛。但是需要注意的是,在这种格式中,通常会用取平均值等方法来表示一个窗口内所有碱基的测序深度,所以和另外两种格式相比,它代表的信息是稍微有点失真的,但是窗口相比染色体而言非常的小,这种程度的失真并不会影响我们的直观判断,所以才会应用的这么广泛。

·end·

—如果喜欢,快分享给你的朋友们吧—

扫描关注微信号,更多精彩内容等着你!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信修炼手册 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. bed format
  • 2. fixedStep
  • 3. variableStep
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档