WES与WGS分析生物信息基因组组装

Mosdepth检测BAM深度

2021-04-14  本文已影响0人  DumplingLucky

Mosdepth是一种用于快速计算全基因组测序覆盖率的命令行工具。它测量BAM或CRAM文件在基因组中每个核苷酸位置或基因组区域的深度。可以将基因组区域指定为被BED文件覆盖的指定区域,或者指定为CNV calling所需的固定大小窗口。Mosdepth使用一种计算效率高的简单算法,使其能够快速生成覆盖摘要。Mosdepth比现有工具更快,并且提供了所产生的覆盖剖面类型的灵活性。

1. 软件安装

#下载地址
https://github.com/brentp/mosdepth/releases

或者直接通过conda来安装

conda install mosdepth

2. 使用说明

mosdepth 0.2.3

  Usage: mosdepth [options] <prefix> <BAM-or-CRAM>

Common Options:

  -t --threads <threads>     number of BAM decompression threads. (use 4 or fewer) [default: 0]
  -c --chrom <chrom>         chromosome to restrict depth calculation.
  -b --by <bed|window>       optional BED file or (integer) window-sizes.
  -n --no-per-base           dont output per-base depth. skipping this output will speed execution
                             substantially. prefer quantized or thresholded values if possible.
  -f --fasta <fasta>         fasta file for use with CRAM files.

Other options:

  -F --flag <FLAG>              exclude reads with any of the bits in FLAG set [default: 1796]
  -i --include-flag <FLAG>      only include reads with any of the bits in FLAG set. default is unset. [default: 0]
  -x --fast-mode                dont look at internal cigar operations or correct mate overlaps (recommended for most use-cases).
  -q --quantize <segments>      write quantized output see docs for description.
  -Q --mapq <mapq>              mapping quality threshold [default: 0]
  -T --thresholds <thresholds>  for each interval in --by, write number of bases covered by at
                                least threshold bases. Specify multiple integer values separated
                                by ','.
  -R --read-groups <string>     only calculate depth for these comma-separated read groups IDs.
  -h --help                     show help

-t 使用线程的数目,这里推荐少于4个CPU,因为文档有说到多于4个线程,速度不会有提升
-c 指定具体哪个染色体去计算深度
-b 能根据BED文件给出其覆盖的指定区域的深度,比如你给出的BED文件含有一个物种对应基因的位置,就能计算其基因的覆盖度。
-F 在计算覆盖度时,排除BAM中含有该FLAG的reads。默认是1796,代表着:read unmapped (0x4), not primary alignment (0x100), read fails platform/vendor quality checks (0x200), read is PCR or optical duplicate (0x400)。一般设定为默认就好了。
-Q 比对最低质量的要求,默认是0,一般可以按照自己的需要进行调整为5或者10。
-x 快速模式,推荐给大型的BAM文件使用
-T 按照阀值(比如1X,2X,10X)输出达到指定阀值的核苷酸数目。
这里可以根据自己的需要使用对应的参数。下面给出一些常用的命令行运行例子以供大家参考使用:

根据bed文件来计算指定区间的覆盖度:

mosdepth -b capture.bed sample-output sample.exome.bam

进一步使用-T根据指定阀值进行计算:

mosdepth --by exons.bed --thresholds 1,10,20,30 $prefix $bam

输出效果如下:

#chrom  start   end     region           1X   10X  20X  30X
1       11869   12227   ENSE00002234944  358  157  110  0
1       11874   12227   ENSE00002269724  353  127  10   0
1       12010   12057   ENSE00001948541  47   8    0    0
1       12613   12721   ENSE00003582793  108  0    0    0

3. 参考

https://github.com/brentp/mosdepth

https://www.jianshu.com/p/6bd56cd8d59e

上一篇下一篇

猜你喜欢

热点阅读