1. Blast
(1)格式化數據庫
formatdb -i db.seq -p T -o T -l logfile
主要參數:
-i 輸入需要格式化的源數據庫名稱
-p 文件類型,是核苷酸序列數據庫(F - nucleotide)/蛋白質序列數據庫(T – protein),default = T
-a 輸入數據庫的格式是否為ASN.1/FASTA [T/F],default = F
-o 解析選項:解析序列標識并且建立目錄[T/F],default = F
-l 自定義log文件命令default=formatdb.log,記錄運行時間、版本號、序列數目等
-n 自定義庫文件命名
建庫結果:
如果建立的是核酸庫,輸出為db.seq.nhr、db.seq.nin、db.seq.nsq三個文件,若選擇了“-o T”,還會同時輸出db.seq.nsd、db.seq.nsi、db.seq.nni、db.seq.nnd四個文件,一共七個。
蛋白庫和核酸庫的輸出類似,相應的輸出文件為:db.seq.nhr、db.seq.nin、db.seq.nsq和db.seq.nsd、db.seq.nsi、db.seq.nni、db.seq.nnd七個文件。
此外還有log文件。
PS: 本流程數據庫已建好,后續只需blast運行即可。如nr庫/zfssz3/SP_MSI/Pipeline/FuctionalAnalysis/database/nr/nr_20170924/20170924
(2)blastall
/opt/bio/ncbi/bin/blastall -i **.fa -d **.fa -o *blast.out -p blastp -F F -m 8 -e 1e-5 -b 10 -v 10 -a 2
主要參數:
以上流程中所用參數:
-i 所用查詢序列文件
-d 所用序列數據庫的名稱 default=nr
-o BLAST結果的輸出文件
-p 所用程序名稱: blastn,blastp,blastx,tblastn,tblastx
-F 查詢序列過濾:將那些給出影響比對結果的低復雜度區域過濾掉 default = T
-m 比對結果顯示格式 defalut=0
-e 期望值,描述搜索某一特定數據庫時,隨機出現的匹配序列數目default = 10.0
-b 顯示比對結果的最大數目 default=250
-v 單行描述的最大數目 default=500
-a 使用處理器的數目 default = 1(單機)
其他參數:
-G 空位gap開放罰分 default = 0
-E 空位gap擴展罰分 default = 0
-I 描述行顯示GI號[T/F], default = F
-q 核酸序列基對不匹配mismatch所罰分數(只對blastn有效)default = -3
-r 核苷酸序列基對匹配match所加分數(只對blastn有效) default = 1
-g 是否執行帶缺口的比對 [T/F],default = T
-B 需要聯配查詢的序列數目 default = 0
-S:在數據庫中搜索時所使用的核酸鏈strand(只對blastn、blastx和tblastx有效),1表top,2表bottom,3表both,default=3
-T: 產生HTML格式的輸出[T/F],default = F
-n: 使用MegaBlast搜索[T/F],default = F
-r : 一個核酸堿基的正確匹配(match)的獎分(只對blastn有效),default = 1
-M: 所使用的打分矩陣,default = BLOSUM62
-m 比對結果格式選項:
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,XML格式的輸出
8 = tabular,TAB格式的輸出
9 =tabular with comment lines,帶注釋行的TAB格式的輸出
10 =ASN, text,文本方式的ASN格式輸出
11 =ASN, binary [Integer] default = 0,二進制方式的ASN格式輸出
m8格式12列結果:
Query id, Subject id, % identity, alignment length, mismatches, gap openings, q.start, q.end, s.start, s.end, e-value, bit score
第一列為Query(遞交序列),
第二列為數據庫序列(目標序列subejct),
第三列為: identity
第四列為:比對長度
第五列為:錯配數
第六列為:gap數
第七列和第八列為:Query開始堿基位置和結束堿基位置
第九列和第十列為:Subject開始堿基位置和結束堿基位置
第十一列為:期望值
第十二列為:比對得分
Ref: https://blog.csdn.net/g_r_c/article/details/8477924;https://blog.csdn.net/bangemantou/article/details/7726585
2. Blast+
blast+是blast的升級,將blastn,blastx等程序與blastall命令分隔開來,對各個命令的參數定制更為方便。
blast+也是格式化數據庫和比對搜索兩步,但命令不同。
(1)格式化數據庫
makeblastdb -in db.fasta -dbtype prot -parse_seqids -out dbname -title dbtitle -logfile filename
參數說明:
-in:待格式化的序列文件
-dbtype:數據庫類型,prot或nucl
-parse_seqids:解析序列標識(建議加上)
-out:數據庫名
-title:數據庫名(略)
-logfile:日志文件,默認輸出到屏幕
更多參數 makeblastdb -help(2)blast+比對
蛋白序列比對蛋白數據庫(blastp)
blastp -query seq.fasta -db dbname -out seq.blast -outfmt 6 -evalue 1e-5 -num_alignments 10 -num_descriptions 10 -num_threads 2
blastx -query seq.fasta -out seq.blast -db dbname -outfmt 6 -evalue 1e-5 -num_descriptions 10 -num_threads 2
參數說明:
-query: 輸入文件路徑及文件名
-out:輸出文件路徑及文件名
-db:格式化了的數據庫路徑及數據庫名
-outfmt:輸出文件格式,總共有12種格式,6是tabular格式,對應BLAST的m8格式
-evalue:設置輸出結果的期望值
-num_alignments 顯示比對數Default = 250
-num_descriptions:單行描述的最大數目 default=500
-num_threads:線程數
更多參數 blastp -help
3. diamond
diamond主要4個程序:makedb/blastp/blastx/view
也是建庫和 比對兩步。
-(1)建庫
diamond makedb --in nr.fa -d nr
參數說明:
--in : 參考序列(格式:fasta)
-d: 索引的前綴名
-(2)比對
diamond blastp -d nr -q reads.fa -e 1e-5 -f 6 -o out_diamond.m6 -k 10 -p 2
主要參數說明
--db/-d <file> 輸入比對數據庫
--query/-q <file> 比對序列
--threads/-p 線程數
--out/-o <file> 輸出文件
--outfmt/-f 輸出文件格式,默認6(表格)
--evalue/-e 比對的最大evalue值(默認0.001)
--max-target-seqs/-k 比對到的最大序列數,默認值是25
其他參數:
--top 百分數的形式表示--max-target-seqs
--min-score 最小評分
--id 給出指定百分比的數據
--subject-cover 最小覆蓋度
--unal (0,1) 是否輸出未比對上的reads(0=no, 1=yes)
--sensitive 建議對齊較長的序列
--more-sensitive 比對準確度更高
--block-size/b,一次處理的十億堿基的大小,主要控制內存使用,默認為2(預計使用此內存數量的大約六倍,即默認內存使用將到達12G),轉錄流程使用0.2
--salltitles 將全長標題包含在DAA格式中,默認DAA文件僅包含縮短序列ID(直到第一個空白字符)
轉錄組流程使用參數:
/ifs4/BC_PUB/biosoft/pipeline/RNA/RNA_RNAdenovo/RNA_RNAdenovo_2016a/Annotation/../software/diamond blastx --evalue 1e-05 --threads 3 --outfmt 5 -d /ifs4/BC_PUB/biosoft/db/Pub/nr/RNA/20170924/animal.fa -q allcdnawithnovelcds.fa -o allcdnawithnovelcds.fa.blast.nr --seg no --max-target-seqs 5 --more-sensitive -b 0.2 --salltitles
PS: 流程中diamond已建好庫,如nr:/ifs4/BC_PUB/biosoft/db/Pub/nr/RNA/20170924
Ref: https://github.com/bbuchfink/diamond/blob/master/diamond_manual.pdf
diamond輸出格式:
0 BLAST pairwise format.
5 BLAST XML format.
6 表格模式 (默認輸出格式).
100 DIAMOND
101 SAM format.
102 Taxonomic classification.
103 PAF format.