Palmsonntagmorgen

NGSデータを使った解析と、その周辺。

SAMtoolsワンライナー覚書

順次追加するかも。versionは1.5です。
.sort.bam はソート済BAMを表します。

SAM -> BAM 変換

 $ samtools view -bS sample.sam > sample.bam

BAM -> SAM 変換

 $ samtools view sample.bam > sample.sam

BAMをソート

 $ samtools sort sample.bam > sample.sort.bam

SAM -> ソート済BAM

 $ samtools view -bS sample.sam | samtools sort > sample.sort.bam
 または
 $ samtools sort sample.sam > sample.sort.bam

BAM indexを作成

 $ samtools index sample.sort.bam

複数のBAMファイルをマージ

 $ samtools merge sample.merged.bam sample1.bam sample2.bam

SAM/BAMに含まれるリード数をカウント(unmappedも含む)

 $ samtools view -c sample.bam

SAM/BAMに含まれるリード数をカウント(mapped readのみ)

 $ samtools view -F 0x04 -c sample.bam

マップされなかったリード数をカウント

 $ samtools view -f4 -c sample.bam

染色体別のマップリード数をカウント(index要)

 $ samtools idxstats sample.bam

もうちょっと詳細な情報が知りたい

 $ samtools flagstat sample.bam

さらに詳細な情報が知りたい

 $ samtools stats sample.bam

BAMからmapped readのみを抽出

 $ samtools view -F 0x04 -b sample.bam > sample.mapped.bam

BAMからPCR duplicateを除去

 $ # single-end
 $ samtools rmdup -s sample.sort.bam sample.sort.rmdup.bam  
 $ # paired-end
 $ samtools rmdup sample.sort.bam sample.sort.rmdup.bam    

BAMからPCR duplicate除去済のmapped readを抽出

 $ samtools view -F 0x04 -b sample.sort.bam | samtools rmdup -s - sample.rmdup.sort.bam