原来一直用blast的,但NCBI已停止了对blast的更新,而强力推荐使用blast+,这次因为要做blast的数据量比较大,所以试了一下blast+,同时也用blast做了一下,发现blast+果然要快得多,看来习惯要改变了。其实blast+和blast的原理差不多,只不过程序参数和名称有了点变化而已,现简要介绍一下其本地化的方法:
1、下载最新版的程序,根据自己的系统选择合适的版本。
2、解压后进入程序目录……ncbi-blast-2.2.31+/bin,各个程序的功能说明可以参考我的另外一篇博客。
3、各程序的参数说明可以用自带的help,例如想查blastx的参数说明可以用: ./blastx -help
4、做blast前一般要先格式化数据库,除非只是几个序列之间的比对,例如格式化一个蛋白数据库可以用下列参数:
$HOME/……/ncbi-blast-2.2.31+/bin/makeblastdb -in uniprot_sport -dbtype prot -input_type fasta -parse_seqids -hash_index
主要几个程序的使用例子:
blastp -query protein.fa -out /protein.output -db dbname -outfmt 0 -evalue 1e-3 -max_target_seqs 20
blastn -query nucl.fa -out output -db dbname -outfmt 6 -evalue 1e-5 -num_descriptions 10
blastx -query nucl.fa -out output -db dbname -outfmt 6 -evalue 1e-5 -num_descriptions 10
参数说明:
-query: 输入文件路径及文件名
-out:输出文件路径及文件名
-db:格式化了的数据库路径及数据库名
-outfmt:输出文件格式,2.2.31版共有14种格式,6是tabular格式对应BLAST的m8格式
-evalue:设置输出结果的e-value值
-max_target_seqs:找到的最大的目标的数目,也可用-num_descriptions,tabular格式输出结果的条数
Blast+本地化及使用方法
2