使用命令版NCBI-Blast进行序列比对

文摘   2024-09-19 06:58   美国  

通常大家都会用NCBI-blast对引物或者核酸序列进行比对,但如果你有100,1000个或更多的序列需要进行比对时,就不可能一个一个粘贴进去操作了。此时,就需要使用命令版进行比对了。

首先需要下载NCBI-blast软件,软件包,singularity或conda

https://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST/

这里,我选择linux版本

解压缩及设置路径:

tar zxvpf ncbi-blast-2.10.1+-x64-linux.tar.gz
or
gunzip -d ncbi-blast-2.10.1+-x64-linux.tar.gz
tar xvpf ncbi-blast-2.10.1+-x64-linux.tar

#设置路径
export PATH=$PATH:$HOME/ncbi-blast-2.10.1+/bin

主要命令及功能:

验证安装:

基本BLAST有以下命令:
blastn:使用核苷酸查询搜索核苷酸数据库;
blastp:使用蛋白质查询搜索蛋白质数据库;
blastx:使用翻译核苷酸查询搜索蛋白质数据库;
tblastn:使用蛋白质查询搜索翻译核苷酸数据库;
tblastx:使用翻译核苷酸查询搜索翻译核苷酸数据库;

blastn的基本用法是:

blastn -query input_reads.fasta -db input_reads_db -out blastn_output.alignments [options]

其中input_reads.fasta是fasta格式的序列数据输入文件,input_reads_db是生成的BLAST数据库,blastn_output.alignments是存储比对的输出文件。可以在BLAST手册中找到其他参数,或者:blastn -help

创建本地 BLAST 数据库:

创建本地 BLAST 数据库的基本方法是使用makeblastdb 命令:

makeblastdb -in input_reads.fasta -dbtype [nucl|prot] -out input_reads_db

其中input_reads.fasta是包含需要放入数据库的所有序列的输入文件,并且dbtype 可以是nucl 或 prot,具体取决于输入文件的类型。

makeblastdb -help

BLAST 的一个重要参数是e值阈值,它通过仅显示e值低于给定值的匹配项来更改返回的匹配项数量。要显示e值低于1e-10的匹配项,请按如下方式修改给定的脚本:

blastn -query input_reads.fasta -db input_reads_db -out blastn_output.alignments -num_threads $SLURM_NTASKS_PER_NODE -evalue 1e-10

E值表示在该大小的主题集中可能偶然发现的具有该分数或更高分数的匹配的预期数量。例如,E值为0.05意味着我们可以在20次类似搜索中预期有1次偶然匹配,而 E值为2.0意味着我们可以在每次类似搜索中预期有2次偶然匹配。

-max_target_seqs当每个查询序列的输出格式为6、7 或10时,仅报告前 个不同主题序列的HSP。

-max_hsps对于每个查询/目标对,仅报告最佳个HSP。

默认的BLAST输出为成对格式。但是,BLAST的参数-outfmt支持以更易于解析的不同格式输出。

-outfmt <integer>

默认值为0,提供人可读(但无法通过编程解析)的文本文件。值6和7在文本文件中生成制表符分隔的行和列,其中7提供解释性注释行。类似地,值10生成逗号分隔的输出;11生成的格式稍后可使用另一个名为blast_formatter 的程序快速转换为任何其他格式。选项6、7和 10可以根据显示的列进行高度配置。

下面显示了针对非冗余nr BLAST数据库运行的蛋白质BLAST的基本 SLURM示例,具有表格输出格式和8个CPU。与之前类似,查询和数据库文件被复制到/scratch/目录。BLAST输出也保存在此目录中 (/scratch/blastx_output.alignments)。BLAST完成后,输出文件将从工作节点复制到当前的工作目录。此示例将首先将数据库和输入文件复制到名为“scratch”的更快的本地存储中,假设输入文件存在于当前目录中。这可以大大提高性能!

可以参考文档: 

https://www.ncbi.nlm.nih.gov/books/NBK279690/ https://www.ncbi.nlm.nih.gov/books/NBK52640/ https://open.oregonstate.education/computationalbiology/chapter/command-line-blast/

科研这点事儿
科普分子生物学知识,关注前沿生物技术,聚焦表观遗传学。