BLAST Database error: No alias or index file found for nucleotide database
在本地使用blast确實比較麻煩,需要兩個步驟
- 建庫
-
比對
這裡,根據官網提供的資訊,建庫又需要兩個步驟;
- 産生masking data
- 産生真正的BLAST資料庫
1.建庫
1.1 建立mask information files.
建立mask informations files有方式,大同小異,在"建庫"上的連結可以查詢。這裡講一種方法。
使用dustmasker
方法建立。這個方法在下載下傳的blast的程式裡有,直接使用就行。
那麼好,我們就開始吧。
假設我們有一個核酸序列資料庫,這裡的資料庫指的就是很多條核酸序列
我這裡的檔案名為"Nuc.fasta"。
dustmasker -in Nuc.fasta -infmt fasta -parse_seqids -outfmt maskinfo_asn1_bin -out Nuc_all.asnb
- 參數說明
- in:輸入的檔案。之前說過,我的資料庫檔案名是"Nuc.fasta"。
- -infmt:輸入檔案的格式
- -parse_seqids:解析序列的id,這個隻需要提供參數,不要提供檔案名
- -outfmt:輸出檔案的格式,直接填寫即可`maskinfo_asnl_bin`即可。
- out:輸出檔案的檔案名。
如果怕差錯的話,直接複制,然後修改輸入檔案和輸出檔案即可,其它不用修改。
1.2 建立資料庫
使用
makeblastdb
建立資料庫。以下是指令
makeblastdb -in Nuc.fasta -input_type fasta -dbtype nucl -parse_seqids -mask_data NucDatsBase.asnb -out Nuc_all
- 參數解釋
- in:原本我們資料庫的檔案
- input_type:輸入檔案的格式,很明顯,我這裡是fasta格式
- dbtype:表示資料庫的類型,我這裡是核酸資料庫。
- mask_data:使用上一個步驟建立的檔案
- out:輸出檔案
這裡注意,一旦運作成功,就會建立很多個檔案,最要用檔案夾儲存起來。 ![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/2020060613073393.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1MjU1OTA1,size_16,color_FFFFFF,t_70)
好了,到現在就建立完了。那麼,就可以比對了。
2.比對
這裡使用
blastn
使用剛剛建立的資料庫進行比對。
指令是;
blastn -db ../Nuc.fasta -query ../../seq.fasta -out result_1 -index_name ../NucDataBase/Nuc_all.asnb
- 參數解釋
- -db:原本資料庫的檔案
- query:需要比對的檔案
- out:輸出檔案
- index_name:之前建立的索引檔案。
這裡要注意,如果沒有提供
index_name
檔案,就會出現标題所展示的問題。