序列拼接工具Bowtie使用說明

2021-09-23 01:51:21 字數 2243 閱讀 6749

2011-06-08 ~ admin

bowtie是乙個超級快速的,較為節省記憶體的短序列拼接至模板基因組的工具。它在拼接35鹼基長度的序列時,可以達到每小時2.5億次的拼接速度。

bowtie並不是乙個簡單的拼接工具,它不同於blast等。它適合的工作是將小序列比對至大基因組上去。它最長能讀取1024個鹼基的片段。換言之,bowtie非常適合下一代測序技術。

如前所述,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值

錯配可能性

正配可能性

101/10

90%20

1/100

99%30

1/1000

99.9%

401/10000

99.99%

501/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

具體的設定,請參見:

字模提取工具 PCtoLCD2002使用說明

在正式版中,使用者可生成自己需要的各種小字庫,也可以生成自定義的國標一二級漢字型檔。0.生成自定義的小字庫 0.使用pctolcd的各種調整功能調整出您需要的文字樣式,如字型,字樣 下劃,傾斜,加 粗 大小 各種點陣大小的字型,可鎖定點陣本身大小 如16 16 然後在這個固定的點陣大小 內調節文字的...

isual C 記憶體洩露檢測 VLD工具使用說明

一 vld工具概述 visual leak detector vld 是一款用於 visual c 的免費的記憶體洩露檢測工具。他的特點有 可以得到記憶體洩漏點的呼叫堆疊,如果可以的話,還可以得到其所在檔案及行號 可以得到洩露記憶體的完整資料 可以設定記憶體洩露報告的級別 並且是開源免費的。二 vl...

gob序列化工具使用

gob是谷歌自己的序列化工具,只能在go語言中使用。常用的場景就是rpc傳輸資料。閒話少說直接上 package main import encoding gob bytes log fmt type user struct type student struct func main buf new...