Bowtie使用介紹


Bowtie使用介紹

Bowtie(下載)是一個超級快速的,較為節省內存的短序列拼接至模板基因組的工具。它在拼接35鹼基長度的序列時,可以達到每小時2.5億次的拼接速度。Bowtie並不是一個簡單的拼接工具,它不同於Blast等。它適合的工作是將小序列比對至大基因組上去。它最長能讀取1024個鹼基的片段。換言之,bowtie非常適合下一代測序技術。

在使用bowtie前,需要使用bowtie-build來構建比對模板。如果你需要比對是比較常見的基因組的話,你可以去下載你所需要的Pre-built indexes文件就可以了。如你要想建立human chr1的索引,可采用下列命令:-bash-3.2$ ./bowtie-build genomes/hg19/chr1.fa chr1 ,結果會生存chr1.1.ebwt chr1.2.ebwt chr1.3.ebwt chr1.4.ebwt四個索引文件,然后把這四個文件移到程序所在文件夾的indexes文件夾中就可以了,如果你機器的內存不夠4G,建議不要做整個基因的索引,可每條染色體做一個。如果你沒有基因組序列,也可使用軟件自帶的程序(./scripts/make_hg19.sh)建立索引。

如前所述,bowtie適合於將短序列拼接至大的模板上,尤其是基因組。模板最小尺寸不能小於1024鹼基,而短序列最長而不能超過1024鹼基。 Bowtie設計思路是,1)短序列在基因組上至少有一處最適匹配, 2)大部分的短序列的質量是比較高,3)短序列在基因組上最適匹配的位置最好只有一處。這些標准基本上和RNA-seq, ChIP-seq以及其它一些正在興起的測序技術或者再測序技術的要求一致。

如果bowtie在你的機器上運行起來很慢,那么你可以試試以下的一些辦法來讓它跑得快一些:

盡可能的使用64位bowtie。很顯然,64位運算會比32位運算更快。所以最好使用支持64位運算的計算機來運行64位的bowtie。如果你是從原文件開始編譯程序,在g++編譯時,你需要傳遞-m64參數,你也可以在make的時候加入這一信息,比如說傳遞BITS=64給make,具體的:make BITS=64 bowtie。想知道你自己運算的是什么版本的bowtie,你可以運行bowtie –version
如果你的計算機有多個CPU或者CPU內核,那么請使用-p參數。-p參數會讓bowtie進入多線程模式。每一個線程都會使用單獨的CPU或者CPU內核。這種並行的運算模式也會大大加快運算速度。
如果你的報告文件中每條短序列都有太多的匹配位點(超過10)那么你可以試着重新使用bowtie-build加上 –offrate參數,如bowtie-build –offrate 4。-o/–offrate默認值為5,每下降1,比對速度會增加1倍,但是系統消耗(硬盤空間和內存)也會加倍。
如果你的系統配置太低,比如內存不足4GB,那么建議你在bowtie的時候使用–offrate參數。與上一條相反的,你需要加大 offrate的值。bowtie –offrate 6. 其默認值為5。每增加1,內存空間的要求下降,這樣會減少讀取硬盤當中虛擬內存的次數,速度反而會有所上升。
-n模式與-v模式。

默認的,bowtie采用了和Maq一樣的質量控制策略,設置 -n 2 -l 28 -e 70。總的來說,比對模式分為兩種,一種是 -n 模式, 一種是 -v 模式,而且這兩種模式是不能同時使用的。bowtie默認使用-n模式。

-n模式參數: -n N -l L -e E

其中N,L,E都為整數。-n N 代表在高保真區內錯配不能超過N個,可以是0?3,一般的設置為2。-l L代表序列高保真區的長度,最短不能少於5,對於短序列長度為32的,設置為28就很不錯。-e E代表在錯配位點Phred quality值不能超過E,默認值為40。Phred quality值的計算式為:-10 log(P,base(10))

Phred Quality值 錯配可能性 正配可能性
10 1/10 90%
20 1/100 99%
30 1/1000 99.9%
40 1/10000 99.99%
50 1/100000 99.999%
而-v模式的參數相對較少。

-v模式參數:-v V

其中V為整數。-v V代表全長錯配不能超過V個,可以是0?3。這時,不考慮是否高保真區,也不考慮Phred quality值。

–best 與–strata

–best參數代表報告文件中,每個短序列的匹配結果將按匹配質量由高到低排序。–strata參數必須與–best參數一起使用,其作用是只報告質量最高的那部分。所謂質量高低,其實就是指錯配的鹼基數,如果指定了-l L參數,那就是在高保真區內的錯配數,否則就是全序列的錯配數。如果你還指定了 -M X的話,那就會在質量最高的當中,隨機選擇X個來報告。也就是說,當我們指定了-M 1 –best –strata的話,那就只報告1個最好的。

對於輸入,-q是指輸入的文件為FASTQ(文件擴展名通常為.fq或者.fastq)格式;-f是指輸入文件為FASTA(文件擴展名通常為.fa, .mfa或者.fna)格式;-c是指在命令行直接輸入要比對的序列。

下面就是一個具體的例子:

./bowtie -v 2 -M 1 –best –strata Genomes/hg19_ebwt/hg19 Pol2ChIP.fastq Pol2ChIP.map

./bowtie -S -t -p 8 -q –chunkmbs 128 hg18_combined.fa.bowtie -1 Pair1.fastq -2 Pair2.fastq bowpeout.sam

./bowtie -S -t -p 8 -q -I 0 -X 300 –chunkmbs 128 hg18_combined.fa.bowtie -1 Pair1.fastq -2 Pair2.fastq bowpeout.sam

time bowtie -p 2 -v 2 -k 11 -m 10 -t –strata –best hg19.index -1 sample_10M_1.fastq -2 sample_10M_2.fastq sample.bowtie_aln.txt

./bowtie-p 5 -m 10 -f trx -1 mate1.fa -2 mate2.fa >output


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM