生信常见文件格式 bed

bed文件是记录基因组位置信息的标准文件格式,同时也用于存储与位置相关的信息,例如在ChIP-Seq 分析中,长以bed文件存储检测信号强度的信息、结构变异检测(SV)结果也可以用bed文件或bedpe文件进行存储。可以说,bed文件格式的应用范围非常广泛。

除了bed文件之外,gtf文件格式和其发展版本gff文件格式,也是常用的记录基因组区间位置的文件格式;GATK 团队针对基因组版本管理的基本需求,规定了interval list 文件格式强绑定bed文件与基因组之间的依赖关系等等。这类文件的基本规则和bed文件非常类似,但应用场景缺相对比较固定。

本文意在为读者介绍bed文件的基本格式和在生物信息领域的基本应用场景下的变化,希望对大家有所帮助。

1. 格式规范

bed文件最为神奇的地方在于, 其实官方并没有给出一个标准说明,不同组织和机构其实对bed文件有着自己的发挥。最为常见的是表示基因组信息的bed12文件格式。

1.1 必须列

bed文件的必须列为以下三列:

  • chrom:表示位置所在染色体
  • chromStart: 表示区域在染色体的起始位置,该列需要注意的是,该项是以0-base作为记录方式的。
  • chromEnd: 表示区域在染色体上的终止位置。

上述三列信息为bed文件必须包含的内容,主要记录基因组区间信息。文件中列与列之间以tab分割,上述3列为bed文件的核心列。

1.2 可选列

除了上述三列之外,bed文件也支持以下追加列信息。

  • name: 表示区域的名称,可以为基因名称、转录本编号等等。
  • score:该区域得分,取值范围随着不同的应用有所区别。
  • strand:表示该区域的连特异性
  • thickStart: 该项为展示过程中使用,表示区域中着重表示的区域的起始位置,例如在基因中外显子的起始位置。
  • thickEND:表示着重表示区域终止位置
  • itemRgb:表示区域的Rgb颜色值
  • blockCount:表示子区域个数,例如基因中外显子个数。
  • blockSize:表示子区域大小,应与上面的blockCount数量一致,数值之间以逗号分隔。
  • blockStarts:表示区域的相对坐标起始位置(相对于ChromStart值),与blockCount数量一致,数值之间以逗号分隔

上述各列信息非必须,但是顺序应符合上面所列的顺序。上述9列结合前面的必须散列,构成bed12的核心信息组。在此基础上,也可以根据其他应用场景需求,继续增加列以丰富表达数据信息。常见的bed格式主要有bed3bed4bed5bed6bed12

生信常见文件格式 bed_第1张图片

2. 0-based 和 1-based

对于程序员而言,下标起始下标是个永远值得讨论的问题。与此类似,对于记录基因组坐标也面临同样的问题,因此就有了两个流派:0-based——以0为坐标起始的文件格式;1-based——以1作为坐标起始的文件格式。

生信常见文件格式 bed_第2张图片

前面介绍过得vcf文件和sam文件都是1-based 记录类型,而bed文件则是 0-based 的ChromStart 列记录类型。这种问题就造成了在格式转化的过程中,需要特别考虑这种情况,尤其对于结构变异类数据的记录。

另外,在一些应用场景,比如某些位点的检测过程中,需要提供bed区域信息以减少计算量。例如在WES的变异检测中,添加捕获区域的bed文件是十分必要的。

3. 具体实例

3.1 作为ChIP-Seq结果bed文件

以MACS2为例,其输出的bed文件采用的是bed12+3格式,即在bed12格式的基础上,增加3列用以表示表观遗传(ChIP-seq、甲基化等)实验结果信息,追加的3列信息如下:

  • signalValue: 测量区域的整体(通常是平均)富集度。
  • pValue: 统计显着性的测量 (-log10)。如果没有分配 pValue,则使用 -1。
  • qValue: 假阳性率 (-log10) 测量统计显着性。如果没有分配 qValue,则使用 -1。

3.2 作为结构变异结果的bedpe文件

由于bed文件原则上不能表示跨染色体的信息,因此,对于结构变异,一般采用的一种基于bed文件的变种文件bedpe格式进行存储。其格式与bed最大的区别在于,对于必须列即chrom、chromStart、chromEnd三列分别记录两次。例如:

chr1 100 200 chr5 5000 5100 bedpe_example1 30 + -
chr9 1000 5000 chr9 3000 3800 bedpe_example2 100 + -

这样就可以对涉及夸染色体的结构变异进行记录和进一步处理了。其他规定与bed标准文件一致。 该文件的另一个用例就是表示比对结果,可以非常方便的进行图形化展示。

你可能感兴趣的:(生物信息学,运维,bash,linux)