samtools 工具

參考文章:https://www.cnblogs.com/xiaofeiIDO/p/6805373.html
1、view
主要功能:sam和bam文件之間相互轉(zhuǎn)換歪沃,針對bam文件進(jìn)行相關(guān)操作嫌松。bam文件是sam文件的二進(jìn)制格式萎羔,占據(jù)內(nèi)存較小且運算速度快。
-b:輸出bam格式贾陷,用于后續(xù)分析

-C:輸出CRAM文件

-1:快速壓縮(需要-b)

-u:輸出未壓縮的bam文件髓废,節(jié)約時間,占據(jù)較多磁盤空間(需要-b)

-h:默認(rèn)輸出sam文件不帶表頭顶燕,該參數(shù)設(shè)定后輸出帶表頭信息

-H:僅僅輸出表頭信息

-c:僅打印匹配數(shù)

-o:輸出文件(stdout標(biāo)準(zhǔn)輸出)

-U:輸出沒有經(jīng)過過濾選擇的reads

-t:制表分隔符文件(需要提供額外的參考數(shù)據(jù)蒋譬,比如參考基因組的索引)

-L:僅包括和bed文件有重疊的reads

-r:僅輸出在STR讀段組中的reads

-R:僅輸出特定reads

-q:定位的質(zhì)量大于INT[默認(rèn)0]

-l:僅輸出在STR 庫中的reads

-F:獲得比對上(mapped)的過濾設(shè)置[默認(rèn)0]

-f:獲得未必對上(unmapped)的過濾設(shè)置[默認(rèn)0]

-T:使用fasta格式的參考序列
實例演示:

bam文件轉(zhuǎn)換為sam文件

samtools view -h smallNA06985 > test.sam

sam文件轉(zhuǎn)換為bam文件

samtools view -bS -1 test.sam > test.bam

提取比對到參考基因組上的數(shù)據(jù)

samtools view -bF 4 test.bam > test.F.bam

提取沒有比對到參考基因組上的數(shù)據(jù)

samtools view -bf 4 test.bam > test.f.bam

雙端reads都比對到參考基因組上的數(shù)據(jù)

samtools view -bF 12 test.bam > test.12.bam

單端reads1比對到參考基因組上的數(shù)據(jù)

samtools view -bF 4 -f 8 test .bam > test1.bam

單端reads2比對到參考基因組上的數(shù)據(jù)

samtools view -bF 8 -f 4 test.bam > test2.bam

2犯助、sort

主要功能:對bam文件進(jìn)行排序(不能對sam文件進(jìn)行排序)
主要參數(shù)釋義:

-l:設(shè)置文件壓縮等級,0不壓縮剂买,9壓縮最高

-m:每個線程運行內(nèi)存大小(可使用K M G表示)

-n:按照read名稱進(jìn)行排序

-o:排序后的輸出文件

-T:PREFIX臨時文件前綴

-@:設(shè)置排序和壓縮的線程數(shù)婚肆,默認(rèn)單線程

用法:

samtools sort -l 9 -m 90M -n -o test.sort.bam -T sorted -@ 2 test.bam

上述含義是:壓縮最高級9较性、每一個線程內(nèi)存90Mb、輸出文件名test.sort.bam赞咙、臨時文件前綴sorted攀操、線程數(shù)2。

當(dāng)然速和,最簡單命令:

samtools sort test.bam -o test.sort.bam

3颠放、index

主要功能:對bam文件建立索引,但在此之前必須進(jìn)行排序(sort)慈迈,生成后綴是.bai的文件痒留。
參數(shù)釋義:

-b:創(chuàng)建一個.bai格式的索引文件(默認(rèn))

-c:創(chuàng)建.csi格式的索引文件

-m:創(chuàng)建.csi文件蠢沿,索引的最小間隔值

用法:

samtools index test.sort.bam

4、merge

功能:合并多個已經(jīng)sort的bam文件

當(dāng)有多個樣本的bam文件時恤磷,可以使用samtools的merge命令將這些bam文件合并為一個排序的且保持所有輸入記錄并保持現(xiàn)有排序順序的bam文件野宜。
主要參數(shù)釋義:

-n:輸入根據(jù)read排序的文件

-r:RG標(biāo)簽添加到每個比對文件上,標(biāo)簽值來自文件名

-u:輸出未壓縮的bam文件

-f:覆蓋同名文件

-1:壓縮等級1

-l:壓縮等級0-9

-R:合并輸入文件的指定區(qū)域

-h:FILE 指定FILE內(nèi)的’@’頭復(fù)制到輸出bam文件中并替換輸出文件的文件頭

-c:多個輸入文件包含相同的@RG頭ID時河胎,只保留第一個到合并后輸出的文件

-p:合并的每一個文件中的@PG ID只保留第一個文件中的@PG

-s:覆蓋隨機(jī)種子

-b:文件列表虎敦,一行一個

用法:

samtools merge merge.bam smallNA06985.sort smallNA06994.sort
5政敢、faidx

功能:對fasta格式的文件建立索引喷户,后綴名.fai访锻。根據(jù)索引文件和序列文件,可以快速提取任意區(qū)域的序列文件河哑。

fasta序列格式要求:每條序列哭懈,除了最后一行外,其他行的長度必須相同睬罗!

為了方便旭斥,我們在NCBI上下載水稻NIP基因組的序列,進(jìn)行演示:

地址:https://www.ncbi.nlm.nih.gov/genome/?term=rice

然后花盐,進(jìn)行解壓縮菇爪,重命名為seuence.fa

用法:

samtools faidx sequence.fa

最后生成一個sequence.fa.fai索引文件,一共5列熙揍,每列之間tab分割氏涩。
第一列:序列的名稱

第二列:序列長度

第三列:第一個堿基的偏移量,從0開始計數(shù)

第四列:除了最后一行外意系,序列中每行的堿基數(shù)

第五列:除了最后一行外饺汹,序列中每行的長度(包括換行符)

從中呢,我們可以有目的的提取序列:

提取水稻第一染色體:

samtools faidx sequence.fa Chr1 > Chr1.fa

提取水稻第一染色體100-200bp的序列:

samtools faidx sequence.fa Chr1:100-200 > Chr1_100_200.fa
6作郭、tview

作用:直觀顯示reads比對到基因組的情況夹攒,和基因組瀏覽器有點類似。
-d:輸出類型

-p:直接定位給定位置

-s:reads顯示

當(dāng)給出參考基因組的時候咏尝,會在第一排給出參考基因組的序列编检,否則第一排全用N表示。

首先利用sort進(jìn)行排序后允懂,在利用index建立索引后蕾总,用下面命令:

samtools tview test.sort.bam
7、flagstat

作用:reads的比對情況統(tǒng)計

Usage: samtools flagstat [--input-fmt-option OPT=VAL] <in.bam>

用法:

samtools flagstat test.sort.bam
8递雀、depth

作用:每個堿基位點的測序深度
-a:輸出所有的堿基深度(包括0)

-b/-r:控制深度的范圍(后面跟染色體)

-f:bam文件名字

-l:設(shè)置read長度閾值

-d/-m:最大覆蓋深度

-q:堿基質(zhì)量閾值

-Q:比對質(zhì)量閾值

samtools depth -a -r 3 test.sort.bam

9蚀浆、mpileup

作用:對參考基因組每個位點做堿基堆積,用于call SNP和INDEL杨凑。主要是生成BCF摆昧、VCF文件或者pileup一個或多個bam文件。比對記錄以在@RG中的樣本名作為區(qū)分標(biāo)識符。如果樣本標(biāo)識符缺失勇吊,那么每一個輸入文件則視為一個樣本
主要參數(shù)釋義:

-A:在檢測變異中窍仰,不忽略異常的reads對

-C:用于調(diào)節(jié)比對質(zhì)量的系數(shù),如果reads中含有過多的錯配针史,不能設(shè)置為零

-D:輸出每個樣本的reads深度

-l:BED文件或者包含區(qū)域位點的位置列表文件

注意:位置文件包含兩列,染色體和位置婚陪,從1開始計數(shù)频祝。BED文件至少包含3列,染色體沽一、起始和終止位置漓糙,開始端從0開始計數(shù)。

-r:在指定區(qū)域產(chǎn)生pileup蝗蛙,需已建立索引的bam文件为狸,通常和-l參數(shù)一起使用

-o/g/v:輸出文件類型(標(biāo)準(zhǔn)格式文件或者VCF、BCF文件)

-t:設(shè)置FORMAT和INFO的列表內(nèi)容病曾,以逗號分割

-u:生成未壓縮的VCF和BCF文件

-I:跳過INDEL檢測

-m:候選INDEL的最小間隔的reads

-f:輸入有索引文件的fasta參考序列

-F :含有間隔reads的最小片段
用法:

生成一個簡單的vcf文件

samtools mpileup -vu test.sort.bam

如果有參考基因組的話

samtools mpileup -vuf genome.fasta test.sort.bam
10泰涂、dict

作用:建立參考基因組字典
用法:

samtools dict test.sort.bam sequences.fa

11辐怕、fastq

作用:bam文件轉(zhuǎn)換為fastq
用法:

samtools fastq test.bam
12、fasta

作用:bam文件轉(zhuǎn)換為fasta
用法:

samtools fasta test.bam
13是牢、idxstats

作用:檢索和打印與輸入文件相對應(yīng)的index file里的統(tǒng)計信息

Usage: samtools idxstats <in.bam>

用法:

samtools idxstats test.sort.bam

結(jié)果返回一個表格陕截,4列。
第一列:序列名

第二列:序列長度

第三列:比對上的reads數(shù)

第四列:未必對數(shù)目

14农曲、stats

作用:對bam文件做詳細(xì)統(tǒng)計,其統(tǒng)計結(jié)果可用mics/plot-bamstats作圖
用法:
samtools stats test.bam
輸出的信息比較多社搅,部分如下:
Summary Numbers,raw total sequences,filtered sequences, reads mapped, reads mapped and paired,reads properly paired等信息
Fragment Qualitites:根據(jù)cycle統(tǒng)計每個位點上的堿基質(zhì)量分布
Coverage distribution:深度為1形葬,2合呐,3,笙以,淌实,的堿基數(shù)目
ACGT content per cycle:ACGT在每個cycle中的比例
Insert sizes:插入長度的統(tǒng)計
Read lengths:read的長度分布

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市源织,隨后出現(xiàn)的幾起案子翩伪,更是在濱河造成了極大的恐慌谈息,老刑警劉巖缘屹,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異侠仇,居然都是意外死亡轻姿,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進(jìn)店門逻炊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來互亮,“玉大人,你說我怎么就攤上這事余素”荩” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵桨吊,是天一觀的道長威根。 經(jīng)常有香客問我,道長视乐,這世上最難降的妖魔是什么洛搀? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮佑淀,結(jié)果婚禮上留美,老公的妹妹穿的比我還像新娘。我一直安慰自己伸刃,他們只是感情好谎砾,可當(dāng)我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著捧颅,像睡著了一般棺榔。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上隘道,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼谭梗。 笑死忘晤,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的激捏。 我是一名探鬼主播设塔,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼远舅!你這毒婦竟也來了闰蛔?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤图柏,失蹤者是張志新(化名)和其女友劉穎序六,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蚤吹,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡例诀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了裁着。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片繁涂。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖扔罪,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情桶雀,我是刑警寧澤矿酵,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布坏瘩,位于F島的核電站漠魏,受9級特大地震影響柱锹,放射性物質(zhì)發(fā)生泄漏禁熏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一胧华、第九天 我趴在偏房一處隱蔽的房頂上張望寄症。 院中可真熱鬧,春花似錦矩动、人聲如沸有巧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽篮迎。三九已至,卻和暖如春示姿,著一層夾襖步出監(jiān)牢的瞬間甜橱,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工栈戳, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留岂傲,地道東北人。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓荧琼,卻偏偏與公主長得像譬胎,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子命锄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內(nèi)容