samtools常用命令

1. view

Usage: samtools view [options] | [region1 [...]]

默认情况下不加 region,则是输出所有的 region.

2 sort

sort对bam文件进行排序。

Usage: samtools sort [-n] [-m ]  

-m 参数默认下是 500,000,000 即500M(不支持K,M,G等缩写)。对于处理大数据时,如果内存够用,则设置大点的值,以节约时间。

-n 设定排序方式按short reads的ID排序。默认下是按序列在fasta文件中的顺序(即header)和序列从左往右的位点排序。

例子:

$ samtools sort abc.bam abc.sort    ###注意 abc.sort 是输出文件的前缀,实际输出是 abc.sort.bam

$ samtools view abc.sort.bam | less -S

3 index

必须对bam文件进行默认情况下的排序后,才能进行index。否则会报错。

建立索引后将产生后缀为.bai的文件,用于快速的随机处理。很多情况下需要有bai文件的存在,特别是显示序列比对情况下。比如samtool的tview命令就需要;gbrowse2显示reads的比对图形的时候也需要。

Usage: samtools index [out.index]

例子:

以下两种命令结果一样

$ samtools index abc.sort.bam

$ samtools index abc.sort.bam abc.sort.bam.bai

4  tview

tview能直观的显示出reads比对基因组的情况,和基因组浏览器有点类似。

Usage: samtools tview [ref.fasta]

当给出参考基因组的时候,会在第一排显示参考基因组的序列,否则,第一排全用N表示。

按下 g ,则提示输入要到达基因组的某一个位点。例子“scaffold_10:1000"表示到达第

10号scaffold的第1000个碱基位点处。

使用H(左)J(上)K(下)L(右)移动显示界面。大写字母移动快,小写字母移动慢。

使用空格建向左快速移动(和 L 类似),使用Backspace键向左快速移动(和 H 类似)。

Ctrl+H 向左移动1kb碱基距离; Ctrl+L 向右移动1kb碱基距离

可以用颜色标注比对质量,碱基质量,核苷酸等。30~40的碱基质量或比对质量使用白色表示;

20~30黄色;10~20绿色;0~10蓝色。

使用点号'.'切换显示碱基和点号;使用r切换显示read name等

还有很多其它的使用说明,具体按 ? 键来查看。

5 depth

得到每个碱基位点的测序深度,并输出到标准输出。

Usage: bam2depth [-r reg] [-q baseQthres] [-Q mapQthres] [-b in.bed] [...]

-r 后面跟染色体号(region)

注意:做depth之前必须做samtools index;

示例:

samtools depth in.bam  >  out.depth.txt

注意: in.bam 必须经过了排序。

6  mpileup

samtools还有个非常重要的命令mpileup,以前为pileup。该命令用于生成bcf文件,再使用bcftools进行SNP和Indel的分析。bcftools是samtool中附带的软件,在samtools的安装文件夹中可以找到。

最常用的参数有2: -f 来输入有索引文件的fasta参考序列; -g 输出到bcf格式。用法和最简单的例子如下

Usage: samtools mpileup [-EBug] [-CcapQcoef] [-rreg] [-fin.fa] [-llist] [-McapMapQ] [-QminBaseQ] [-qminMapQ]in.bam[in2.bam[...]]$ samtools mpileup -f genome.fasta abc.bam > abc.txt$ samtools mpileup -gSDf genome.fasta abc.bam > abc.bcf$ samtools mpileup -guSDf genome.fasta abc.bam | \          bcftools view -cvNg - > abc.vcf

你可能感兴趣的:(samtools常用命令)