Linux本地化运行NCBI blast+

前言:
作为生物科研人员的标配,BLAST知多少?

BLAST简介:
BLAST是一套在蛋白质数据库或DNA数据库中进行相似性比较的分析工具。

blast程序参数:

blastpng.png

1. 下载并安装BLAST+

打开下载地址:ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/

# 下载安装包
xjf@ubuntu:~$ wget -c ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.7.1+-x64-linux.tar.gz
# 解压
xjf@ubuntu:~$ tar -zxvf ncbi-blast-2.7.1+-x64-linux.tar.gz 
# 添加环境变量
xjf@ubuntu:~$ echo export PATH="/home/xjf/ncbi-blast-2.7.1+/bin:$PATH" >  ~/.bashrc

2. 数据库下载及更新

# 有哪些可供下载的blast数据库?
xjf@ubuntu:~/tools/ncbi-blast-2.7.1+/bin$ perl update_blastdb.pl --showall
# 下载NR数据库
xjf@ubuntu:~/tools/ncbi-blast-2.7.1+/bin$ nohup perl update_blastdb.pl --decompress nr >out.log 2>&1 &

3. BLAST索引构建

  USAGE
  makeblastdb [-h] [-help] [-in input_file] [-input_type type]
    -dbtype molecule_type [-title database_title] [-parse_seqids]
    [-hash_index] [-mask_data mask_data_files] [-mask_id mask_algo_ids]
    [-mask_desc mask_algo_descriptions] [-gi_mask]
    [-gi_mask_name gi_based_mask_names] [-out database_name]
    [-max_file_sz number_of_bytes] [-logfile File_Name] [-taxid TaxID]
    [-taxid_map TaxIDMapFile] [-version]

makeblastdb -in mature.fa -input_type fasta -dbtype nucl -title miRBase -parse_seqids -out miRBase -logfile File_Name
-in 后接输入文件,你要格式化的fasta序列;
-dbtype 后接序列类型,nucl为核酸,prot为蛋白;
-title 给数据库起个名,好看~~(不能用在后面搜索时-db的参数);
-parse_seqids 推荐加上,现在有啥原因还没搞清楚;
-out 后接数据库名,自己起一个有意义的名字,以后blast+搜索时要用到的-db的参数;
-logfile 日志文件,如果没有默认输出到屏幕;

4. 数据库使用

因为我们下载的是已经建好索引的数据库,所以省去了makeblastdb的过程。
常见的命令有下面几个:
-query 要查询的核酸序列
-db 数据库名字
-out 输出文件
-evalue evalue阈值
-outfmt 输出的格式

实例1. 核酸序列比对核酸数据库

blastn –query seq.fasta –out seq.blast –db dbname –outfmt 6 –evalue 1e-5 –num_descriptions 10 –num_threads 8

-query: 输入文件路径及文件名;
-out: 输出文件路径及文件名;
-db: 格式化后的数据库路径及数据库名;
-outfmt: 输出文件格式,总共有12种格式,6是tabular格式对应blast的m8格式。
-evalue: 设置输出结果的e-value值;
-num_descriptions: 显示一行描述的结果(类似网页版的结果列表)输出的条数, 默认是500条,不适用于outfmt>4,与max_target_seqs参数不兼容;
-num_alignments: 显示数据库序列的对比结果的数目(具体的比对结果),默认是250个
-max_target_seqs 可显示的比对序列的最大数,默认值是500,不适用于outfmt<=4,与-num_descriptions及-num_alignments不兼容;
-num_threads 线程数

参考资料1:构建NCBI本地BLAST数据库 (NR NT等) | blastx/diamond使用方法 | blast构建索引 | makeblastdb
参考资料2:window系统下本地blast+安装与使用教程
参考资料3:Blast+的安装与使用
参考资料4:bowtie和bowtie2用法详解
更多专题

你可能感兴趣的:(Linux本地化运行NCBI blast+)