首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

BLAST+使用教程

本教程为Linux下新版BLAST+的本地化安装与基本用法。BLAST的更详细使用方法可参考BLAST手册《BLAST Command Line Applications User Manual》,网址:http://www.ncbi.nlm.nih.gov/books/NBK279690/

1. 下载

从NCBI网址下载最新版BLAST程序:ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/

根据自己的操作系统选择相应的BLAST可执行程序,如Ubuntu 12.04(64位)系统就下载:

$wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.6.0+-x64-linux.tar.gz

2. 安装

解压缩:

$tar -zxvf ncbi-blast-2.6.0+-x64-linux.tar.gz

移动到本地欲安装的目录(不带版本号,避免因升级而修改配置文件)

$sudo mv ncbi-blast-2.6.0+/ /opt/blast

将BLAST+可执行程序所在目录(bin)的绝对路径加入到环境变量$PATH中,方便通过程序名直接调用。

编辑~/.bashrc文件,在最后加入bin目录

如果显示版本正确,安装成功。

3.配置本地BLAST库

安装目录/opt/blast下新建一个文件夹,命名为blastdb 。

$mkdir /opt/blast/blastdb

在用户home目录下新建一个文件.ncbirc(文件名是以点号开头)。

$vi ~/.ncbirc

在文件中添加内容:

[BLAST]

BLASTDB=/opt/blast/blastdb

配置好后,以后做BLAST选择库的时候就可以只输入名称(比如nr),不用输入绝对路径了。

4.基本用法

执行BLAST程序要先准备待查找目标序列(Subject)的数据库,BLAST程序需要有特定格式数据库才能进行搜索,所以要先格式化序列数据库;也可以直接从NCBI下载已经格式化好的数据库,如NT, NR数据库等。然后根据你的查询序列(Query)为蛋白质或核酸序列选择相应BLAST程序,如blastp或blastn等搜索相似序列。

4.1 格式化序列数据库

如果该库需要经常使用,可将库文件移到前面配置的库文件的目录,今后在其它目录运行blast的时候,便可直接输入库名(不用输入绝对路径),直接使用。

$mv dbname.* /opt/blast/blastdb

4.2 运行BLAST程序

以核酸序列比对核酸数据库(blastn)为例:

更多参数信息可直接输入blastn -help查阅。

Blastn程序的default value为magablast。Megablast 是在intra-species或者very closely related species中使用的blast版本,其特点是word_size较大(默认值为28bp),这样就可以在initial match过程排除掉很多情况,从而加快比对速度。而对于inter-species的两个较短片段就无法搜寻到结果,这种情况可以增加参数 –task blastn,就按blastn程序进行搜寻。

新BLAST+中最拉风的功能是直接控制输出格式,如:-outfmt format “7 qacc sacc evalue length pident”

7表示带注释行的tab格式的输出,可以自定义要输出哪些内容,用空格分格跟在7的后面,并把所有的输出控制用双引号括起来,其中qacc查询序列的acc,sacc表示目标序列的acc,evalue即是e值,length即是匹配的长度,pident即是序列相同的百分比。其他可用的选项参见最后。

其它程序,如蛋白序列比对蛋白数据库(blastp)以及核酸序列比对蛋白数据库(blastx)等,用法与blastn类似:

完整的参数说明可以用-help查询。

4.3 也可以直接下载NCBI已经格式化好的库(NCBI-curated database),直接在本地库中比对,以蛋白质库nr为例:

下载库可使用BLAST+自带的update_blastdb.pl脚本

如果没有下载本地化nr库,可添加-remote选项,进行在线比对(就不能使用-num_threads参数了),但速度慢一些,适合序列不多的情况。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171212G0SJK800?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券