1. mosdepth简介
mosdepth(https://github.com/brentp/mosdepth)是用于WGS,exome,targeted sequencing的BAM/CRAM文件的测序深度计算的软件,主要是用Nim语言写的(第一次听说这种语言)。
2. mosdepth可以得到的数据包括
- 每个碱基深度的计算速度是samtools depth的约2倍。——对于 30X 基因组,大约需要 25 分钟的 CPU 时间。
- 给定窗口大小的平均每个窗口深度,可用于 CNV calling。
- 给定区域的 BED 文件的每个区域的平均值。
- 给定窗口大小的每个区域累积覆盖率(cumulative coverage)直方图的平均值或中值。
- 对于每个染色体和全基因组,在给定阈值或以上覆盖的碱基比例分布。
- 合并相邻碱基的量化输出,只要它们落在相同的覆盖范围内,例如(10-20)。
- 阈值输出以指示在给定阈值下每个区域中有多少个碱基被覆盖。
- 每条染色体和每条染色体指定区域内的平均深度的总结。
- 一个d4文件(比bigwig好)。
3. 下载安装
直接下载已编译文件,修改权限即可使用。
1 | wget https://github.com/brentp/mosdepth/releases/download/v0.3.3/mosdepth |
4. 使用
- 准备
samtools index sample.bam
# 生成bam文件的索引文件sample.bam.bai
- 计算深度
mosdepth -t 4 out sample.bam
- 参数
- -t 4:线程,需要<=4
- out:输出文件的前缀
- sample.bam:待分析的bam文件
- –by sample.bed:指定区域的bed文件,我分析整个基因组,没加这个参数。
还有许多参数等着探索…
5. 结果
- out.mosdepth.summary.txt
- 文件包含每条染色体和整个基因组的信息,长度,mapped 碱基数量,平均深度,最小深度和最大深度。示例:
1 | chrom length bases mean min max |
- out.mosdepth.global.dist.txt
- 文件包含累积分布,指示给定覆盖率阈值下覆盖的总碱基的比例。包含三列:染色体/total,覆盖水平,该级别覆盖的碱基比例。示例:
1 | MCscaf001 1961 0.00 |
还可以用脚本python scripts/plot-dist.py \*global.dist.txt
画图,输出dist.html
,可以看出整个基因组的覆盖度的分布。
- out.per-base.bed.gz
- 每个碱基的输出数据。
- out.per-base.bed.gz.csi
6. references
- 欢迎关注微信公众号:生信技工
- 公众号主要分享生信分析、生信软件、基因组学、转录组学、植物进化、生物学概念等相关内容,包括生物信息学工具的基本原理、操作步骤和学习心得。