Linux下BLAST的使用---轉載

一、把BLAST的壓縮文件解壓,而後將bin目錄下的文件拷貝至/usr/local/bin下;
二、製做軟連接,將解壓後的文件中bin目錄連接至/home/username下,eg:ln -s /home/username/blast/bin;
三、在當前用戶目錄下,編輯bashrc文件,在文件中加入export PATH=/home/username/bin/=$PATH;
四、在當前目錄下,將數據文件格式化,$formatdb -i filename.後綴 -p F -o T
五、將待進行blast的文件轉化爲test.txt文件,拷貝文件內容以下:
>test....
ACGTCAGTCGATCGAT.....
六、進行比對
$blastall -p blastn -d filename.後綴 -i test.txt -o test.out
 

formatdb -i /home/liuguiyou/Landsberg_Arabidopsis/ncbi_arab2.fna  -o T -p F

[liuguiyou@localhost ~]$ blastall -p blastn -i /home/liuguiyou/Landsberg_Arabidopsis/Cereon_Ath_Ler.fasta -d /home/liuguiyou/Landsberg_Arabidopsis/ncbi_arab2.fna -e 1e-10 -o /home/liuguiyou/Landsberg_Arabidopsis/result


假設:
你安裝的blast路徑爲 /opt/blast/

一、把BLAST的壓縮文件解壓,而後將bin目錄下的文件拷貝至/usr/local/bin下;
---
目的:全部用戶,無論其當前路徑是什麼,都可以在命令行下直接調用blast包中的程序,而無需指定該程序的路徑
解釋:系統的PATH環境變量中包含/usr/local/bin,在命令行下調用blast包中的程序時,系統會去/usr/local/bin路徑下尋找相應的命令程序
建議:簡單起見,你能夠略過這一步,除非你但願當使用其餘用戶登陸後,也能夠直接輸入程序名來使用你安裝的blast

二、製做軟連接,將解壓後的文件中bin目錄連接至/home/username下,eg:ln -s /home/username/blast/bin;
---
目的:爲第3步所作的準備工做
建議:簡單起見,你能夠略過這一步

三、在當前用戶目錄下,編輯bashrc文件,在文件中加入export PATH=/home/username/bin/=$PATH;
---
糾正:這裏有一些筆誤,應當是編輯.bashrc文件,並在文件中加入export PATH=/home/username/bin/:$PATH;
目的:當前用戶登陸後,能夠直接輸入程序名來使用blast
建議:簡單起見,你能夠略過這一步

四、在當前目錄下,將數據文件格式化,$formatdb -i filename.後綴 -p F -o T
---
執行:html

代碼:
/opt/blast/bin/formatdb -i {data file here} -p F -o T



五、將待進行blast的文件轉化爲test.txt文件,拷貝文件內容以下:
>test....
ACGTCAGTCGATCGAT.....
---
這個沒什麼好說的,改個文件名

六、進行比對
$blastall -p blastn -d filename.後綴 -i test.txt -o test.out
---
執行:數據庫

代碼:
/opt/blast/bin/blastall -p blastn -d {database file here} -i test.txt -o test.out


補充說明:

1.運行建庫程序formatdb:bash

建庫的過程是創建目標序列的索引文件,所用程序是formatdb。程序容許的輸入格式FASTA或者ASN.1格式,一般咱們使用FASTA格式的序列做爲輸入。用於建庫的FASTA序列是db.seq,formatdb的基本命令是:ide

formatdb -i db.seq [-options]ui

經常使用的參數有如下幾個:spa

-p (T/F):-p參數的意義是選擇建庫的類型,"T"表示蛋白庫,"F"表示核酸庫。缺省值爲"T"。命令行

-o (T/F):-o參數的意義是判斷是否分析序列名並創建序列名索引。"T"表示創建序列名索引,"F"表示不創建序列名索引。缺省值爲"F"。orm

程序輸出:htm

若是創建的是核酸庫,輸出爲db.seq.nhr、db.seq.nin、db.seq.nsq,若是選擇了參數"-o T",還會同時輸出db.seq.nsd、db.seq.nsi、db.seq.nni、db.seq.nnd。blog

蛋白庫和核酸庫的輸出相似,相應的輸出文件爲:db.seq.phr、db.seq.pin、db.seq.psq和db.seq.psd、db.seq.psi、db.seq.pni、db.seq.pnd。

除了這些結果,程序還會輸出LOG文件(默認爲formatdb.log),裏面記錄了運行時間、版本號、序列數量等信息。


2.運行比對程序blastall:

Blast的主程序是blastall。程序的輸入文件是query序列(-i 參數)和庫文件(-d 參數),比對類型的選擇(-p 參數)和輸出文件(-o 參數)由用戶指定。其中「-p」參數有5種取值:

-p blastp:蛋白序列與蛋白庫作比對。

-p blastx:核酸序列對蛋白庫的比對。

-p blastn:核酸序列對核酸庫的比對。

-p tblastn:蛋白序列對核酸庫的比對。

-p tblastx:核酸序列對核酸庫在蛋白級別的比對

blastall是最經常使用的blast程序之一,其功能很是強大,其下面有很是多的參數,可是通常使用的參數如:-p、-i、-d、-o、-e等幾個。

3.運行參數說明:

  • -p: 執行的程序名稱
  • -d: 搜索的數據庫名稱
  • -i : 要查詢的序列文件名(Query File)
  • -e:(數學)指望值(Expectation value),E值是個統計閾值,缺省值10, 意指比對結果中因爲隨機偶然性產生的匹配結果不大於10,E值越小結果越可靠。
  • -o :查詢結果輸出文件名
  • -m: 比對結果顯示格式選項,缺省值爲0 ,即pairwise格式。另外還能夠根據不一樣的須要選擇1~6等不一樣的格式。
  • -I :在描述行中顯示gi號[T/F],缺省值F
  • -v :單行描述(one-line description)的最大數目,缺省值500
  • -b :顯示的比對結果的最大數目,缺省值250
  • -F :對於要查詢的序列作低複雜度區域(low complexity regions, LCR)的過濾[T/F],缺省值T。對blastn用的是DUST程序,其餘比對用的是SEG程序。
  • 所謂「低複雜度區域」是指某些或一些殘基過多表現,短週期重複等。對於高等哺乳動物的基因組序列,能夠先用RepeatMask程序遮蔽重複元件。在輸出結果中,對LCR區的序列核酸用「N」代替,蛋白質序列用「X」代替。
  • -a:運行BLAST程序所使用的處理器的數目,缺省值1
  • -S:在數據庫中搜索時所使用的核酸鏈(strand),只對blastn、blastx和tblastx有效;1表示top,2表示bottom,3表示both;缺省值3
  • -T: 產生HTML格式的輸出[T/F],缺省值F
  • -n: 使用MegaBlast搜索[T/F],缺省值F
  • -G: 打開一個gap的罰分(0表示使用缺省設置值),默認0
  • -E: 擴展一個gap的罰分(0表示使用缺省設置值),默認0
  • -q: 一個核酸鹼基的錯配(mismatch)的罰分(只對blastn有效),缺省值-3
  • -r : 一個核酸鹼基的正確匹配(match)的獎分(只對blastn有效),缺省值1
  • -M: 所使用的打分矩陣,缺省值BLOSUM62

4.輸出結果參數說明:

   -m: 比對結果顯示格式選項

0 = pairwise,1 = query-anchored showing identities,2 = query-anchored no identities,

3 = flat query-anchored, show identities,

4 = flat query-anchored, no identities,

5 = query-anchored no identities and blunt ends,

6 = flat query-anchored, no identities and blunt ends,

7 = XML Blast output,

8 = tabular,

9 tabular with comment lines

10 ASN, text

11 ASN, binary

 

-m 8:列表格式的比對結果。從左到右各列的意義依次是:query名、subject名、identity、比對長度、錯配數、空位數、query比對起始座標、query比對終止座標、subject比對起始座標、subject比對終止座標、指望值、比對得分。

query1 sub24   91.11   45    3   1    198   241   502208  502252  2.7e-06 50.05

query1 sub21   98.68   151   2   0    532   682   1360665 1360515 1.0e-76 284.0

query1 sub21   86.17   94    12  1    198   290   479232  479139  4.8e-14 75.82

query1 sub21   87.04   54    7   0    238   291   1297867 1297920 6.9e-07 52.03

query2 sub21   99.44   892   3   2    28    918   1351055 1350165 0.0     1713.2

query2 sub21   87.58   153   17  1    343   495   1358110 1357960 2.1e-35 147.2

query2 sub21   84.11   107   16  1    699   805   1305723 1305618 4.0e-12 69.88

query2 sub21   89.58   48    5   0    519   566   1305968 1305921 6.0e-08 56.00

query2 sub14   88.24   153   16  1    343   495   145402  145252  8.7e-38 155.1

query2 sub24   88.08   151   16  1    345   495   567561  567709  1.4e-36 151.2

query2 sub24   87.80   123   14  1    686   808   563341  563220  1.9e-26 117.5

 

在m8格式中經過subject的比對起止位置能夠判斷出序列的比對方向。好比上述結果中第1行,subject的起始座標小於終止座標,則兩條序列是同方向比對上的;第2行中subject起始座標大於終止座標,則query序列是和subject的互補鏈比上的。

-m 9:帶註釋行的列表格式。格式和-m 8同樣,只是在每一個query的比對結果前面加了註釋行用以說明列表中各列的意義。

# BLASTN 2.2.8 [Jan-05-2004]

# Query: query1   out.ace.1

# Database: database.seq

# Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score

query1 sub24   91.11   45    3   1    198   241   502208  502252  2.7e-06 50.05

query1 sub21   98.68   151   2   0    532   682   1360665 1360515 1.0e-76 284.0

query1 sub21   86.17   94    12  1    198   290   479232  479139  4.8e-14 75.82

query1 sub21   87.04   54    7   0    238   291   1297867 1297920 6.9e-07 52.03

# BLASTN 2.2.8 [Jan-05-2004]

# Query: query1   out.ace.1

# Database: database.seq

# Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score

query2 sub21   99.44   892   3   2    28    918   1351055 1350165 0.0     1713.2

query2 sub21   87.58   153   17  1    343   495   1358110 1357960 2.1e-35 147.2

query2 sub21   84.11   107   16  1    699   805   1305723 1305618 4.0e-12 69.88

query2 sub21   89.58   48    5   0    519   566   1305968 1305921 6.0e-08 56.00

query2 sub14   88.24   153   16  1    343   495   145402  145252  8.7e-38 155.1

query2 sub24   88.08   151   16  1    345   495   567561  567709  1.4e-36 151.2

query2 sub24   87.80   123   14  1    686   808   563341  563220  1.9e-26 117.5

-m 10和11:分別是ASN格式的文本文件和二進制文件,這裏就不作介紹了。

「-m」參數的值從1到6都是爲了便於在subjects之間作比較而設立的功能;8和9保留了全部比對結果的原貌,只是統計成了列表的格式,從而大幅度下降了存儲空間的消耗,並使結果更加清晰易讀。可是m8/m9格式也有相應的缺點,就是損失了一部分比對信息,除了序列長度信息和比對條形圖之外,還會在 blastx、tblastn和tblastx的比對中損失關鍵的相位信息,這是要儘可能避免的。所以在大規模的blastn比對任務中,每每要採用m8格式的輸出結果來節省空間;而在小規模高精度比對中,一般用默認的輸出格式,再用其餘程序來提取結果中的有用信息。

轉自:http://blog.sina.com.cn/s/blog_4af3f0d20100ene9.html

相關文章
相關標籤/搜索