快速序列比對之BLAST

BLAST的大名對于做生物的同學(xué)可以說是如雷貫耳椅寺,哪怕非生信的同學(xué)也或多或少接觸過這個東西梯影。我們通常會使用ncbi的blast在線工具進行比對,但具有一個缺點就是很慢诅挑,因此我們常常會搭建一個本地blast系統(tǒng)進行比對分析。

NCBI提供了一套用于運行BLAST的命令行工具泛源,稱為BLAST+拔妥。這允許用戶在自己的服務(wù)器上執(zhí)行BLAST搜索,而不受大小达箍、容量和數(shù)據(jù)庫的限制没龙。BLAST+可以使用命令行運行,對于linux用戶可以說是相當(dāng)友好了缎玫。

blast+的軟件安裝

wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.10.1+-x64-linux.tar.gz
tar -zxvf ncbi-blast-2.10.1+-x64-linux.tar.gz

# 加入環(huán)境變量
export PATH=$PATH:$PWD/ncbi-blast-2.10.1+/bin/

nr/nt數(shù)據(jù)庫下載和使用

nr指的是protein sequence硬纤,而nt指的是nucleotide。所以nr/nt數(shù)據(jù)庫指的是兩個數(shù)據(jù)庫赃磨,前者是蛋白質(zhì)數(shù)據(jù)庫筝家,后者是核酸序列數(shù)據(jù)庫。
計算資源足夠而帶寬不足時邻辉,建議下載fasta序列溪王,然后使用blast的本地命令建立index。命令如下

wget -c ftp://ftp.ncbi.nih.gov/blast/db/FASTA/nr.gz # nr數(shù)據(jù)庫 
wget -c ftp://ftp.ncbi.nih.gov/blast/db/FASTA/nt.gz # nt數(shù)據(jù)庫

# 解壓縮
gunzip nr.gz
gunzip nt.gz

# 構(gòu)建本地blast nr/nt數(shù)據(jù)庫
mkdir nr_db; mkdir nt_db
makeblastdb -in nr -dbtype prot -title my_nr -parse_seqids -out ./nr_db/nr -logfile make_nr.log
makeblastdb -in nt -dbtype nucl -title my_nt -parse_seqids -out ./nt_db/nt -logfile make_nt.log

makeblastdb常用參數(shù)的解釋:

  • -in: 后面接輸入文件值骇,即我們要格式的fasta序列
  • -dbtype: 后接序列類型莹菱,nucl為核酸,prot為蛋白
  • -title: 給生成的blast數(shù)據(jù)庫起一個別名
  • -parse_seqids: 幫助我們解析fa文件中吱瘩,“>”后面的id信息
  • -out: 后接數(shù)據(jù)庫名稱道伟,起一個有意義的名稱,后續(xù)進行blast比對時使碾,-db參數(shù)后跟這個名稱
  • -logfile: 日志文件蜜徽,如果沒有則輸出到標(biāo)準(zhǔn)輸出(屏幕)上

帶寬足夠而計算資源不足祝懂,建議下載已經(jīng)建立好索引的nr/nt庫,命令如下:

mkdir nr_db; cd nr_db
wget -c ftp://ftp.ncbi.nih.gov/blast/db/nr*
for i in *gz
do
tar -zxvf $i
done

mkdir ../nt_db; cd ../nt_db
wget -c ftp://ftp.ncbi.nih.gov/blast/db/nt*
for i in *gz
do
tar -zxvf $i
done

除了可以使用wget下載已經(jīng)建立好索引的nr/nt庫還可以使用blast+自帶的update_blastdb.pl腳本下載娜汁。

update_blastdb.pl --decompress nr [*]
update_blastdb.pl --decompress nt [*]
# 下載壓縮后的nr/nt索引數(shù)據(jù)庫嫂易,并進行解壓

更推薦wget下載方法,可以斷點繼續(xù)下載掐禁。

序列比對

以核酸序列為例進行序列比對

blastn -query test.fa -out test.result -db nr -outfmt 6 -evalue 1e-5 -num_threads 4

常用參數(shù)介紹:

  • -query: 需要比對的數(shù)據(jù)的文件路徑以及文件名
  • -out: 輸出比對結(jié)果
  • -db: 后面跟著建立好的索引數(shù)據(jù)庫
  • -outfmt: 指定輸出結(jié)果的格式怜械,此處指定為6,即常見的m8格式
  • -evalue: 設(shè)置輸出結(jié)果的最小e-value值
  • -num_threads: 指定比對時使用的線程數(shù)

此外傅事,如果我們的目的是看測序數(shù)據(jù)的污染物來源缕允,推薦加上下面兩個參數(shù):

  • -subject_besthit:數(shù)據(jù)庫中中的所有sequence,只輸出blast最優(yōu)的那個結(jié)果
  • -max_target_seqs:設(shè)置每條 query reads所能比對上的最多的個數(shù)蹭越,這里推薦設(shè)置為1障本。

輸出結(jié)果的格式解析

輸出的比對結(jié)果,一共有12列响鹃,分別代表:

  1. Query id:查詢序列ID標(biāo)識
  2. Subject id:比對上的目標(biāo)序列ID標(biāo)識
  3. % identity:序列比對的一致性百分比
  4. alignment length:符合比對的比對區(qū)域的長度
  5. mismatches:比對區(qū)域的錯配數(shù)
  6. gap openings:比對區(qū)域的gap數(shù)目
  7. q. start:比對區(qū)域在查詢序列(Query id)上的起始位點
  8. q. end:比對區(qū)域在查詢序列(Query id)上的終止位點
  9. s. start:比對區(qū)域在目標(biāo)序列(Subject id)上的起始位點
  10. s. end:比對區(qū)域在目標(biāo)序列(Subject id)上的終止位點
  11. e-value:比對結(jié)果的期望值
  12. bit score:比對結(jié)果的bit score值

我們一般看第1驾霜,3,11买置,12列粪糙。其中第一列告訴我們比對到了哪個物種,剩余三列告訴我們比對的可信程度忿项。

導(dǎo)師愛說蓉冈,垃圾進垃圾出……但哪怕是垃圾,你也要知道它是什么垃圾轩触。濕垃圾or干垃圾寞酿,或者像我一樣是個學(xué)術(shù)垃圾~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市脱柱,隨后出現(xiàn)的幾起案子伐弹,更是在濱河造成了極大的恐慌,老刑警劉巖榨为,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掸茅,死亡現(xiàn)場離奇詭異,居然都是意外死亡柠逞,警方通過查閱死者的電腦和手機昧狮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來板壮,“玉大人逗鸣,你說我怎么就攤上這事。” “怎么了撒璧?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵透葛,是天一觀的道長。 經(jīng)常有香客問我卿樱,道長僚害,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任繁调,我火速辦了婚禮萨蚕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蹄胰。我一直安慰自己岳遥,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布裕寨。 她就那樣靜靜地躺著浩蓉,像睡著了一般。 火紅的嫁衣襯著肌膚如雪宾袜。 梳的紋絲不亂的頭發(fā)上捻艳,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天,我揣著相機與錄音庆猫,去河邊找鬼讯泣。 笑死,一個胖子當(dāng)著我的面吹牛阅悍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播昨稼,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼节视,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了假栓?” 一聲冷哼從身側(cè)響起寻行,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎匾荆,沒想到半個月后拌蜘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡牙丽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年简卧,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片烤芦。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡举娩,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情铜涉,我是刑警寧澤智玻,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站芙代,受9級特大地震影響吊奢,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜纹烹,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一页滚、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧滔韵,春花似錦逻谦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至宴卖,卻和暖如春滋将,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背症昏。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工随闽, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人肝谭。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓掘宪,卻偏偏與公主長得像,于是被迫代替她去往敵國和親攘烛。 傳聞我的和親對象是個殘疾皇子魏滚,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,877評論 2 345