生信入门:使用blast进行物种鉴定

使用blast进行物种鉴定

BLAST(Basic Local Alignment Search Tool)是一种用于生物序列比对的工具,它可以在蛋白质数据库或DNA数据库中进行相似性比较。通过blast,您可以从全基因组数据中有效地提取出您感兴趣的单个基因。这种方法不仅高效,而且可以针对特定的研究需求进行定制化的基因提取。以下是BLAST的一些本地版的blast的基本信息和功能:

一、本地blast的使用方法

1.BLAST的主要理念:

    BLAST可以在核酸和/或蛋白质空间或翻译空间中进行搜索,其中核苷酸被翻译成蛋白质。

   搜索可以实施不同的“策略”来优化特定任务,不同的搜索策略会返回不同的对齐结果。

    使用基于评分矩阵的对齐。

2.BLAST的工作方式:

 BLAST程序首先查询query序列的所有子序列,并将它们存储在哈希表中。然后搜索数据库中的匹配项。  BLAST采用启发式算法,通过大幅度降低灵敏度来减少运行时间,与FASTA软件相比,BLAST通过限制搜索在狭隘的矩阵对角线条带上,来改进搜索速度。

3.BLAST的种类:

  Blastn:用于比对两个核酸序列,主要用于寻找DNA序列之间的相似性。

  Blastp:专门用于比对蛋白质序列,帮助识别具有相似结构和/或功能的蛋白质。

  Blastx:将核酸序列(通常是DNA)转录成蛋白质序列,并与蛋白质数据库进行比对,对于发现基因编码的蛋白质特别有用。

  Tblastn:将蛋白质序列与核酸序列数据库(这些序列会被转换成蛋白质)进行比对,这在寻找某蛋白质可能的基因时非常有用。

  Tblastx:比对两个核酸序列,但在比对之前,这两个序列都会被转换成蛋白质序列,这对于寻找在两种不同物种中编码相似蛋白的基因非常有价值。

4.BLAST的应用:

  BLAST可用于推断序列之间的功能和进化关系,以及帮助鉴定基因家族的成员。

  BLAST还能发现具有缺口的能比对上的序列。

5.BLAST的安装和使用: 

5.1 安装方式 

BLAST(Basic Local Alignment Search Tool)是一种广泛使用的生物信息学工具,用于比对核酸或蛋白质序列,以寻找相似性并推断两个序列之间的进化关系。以下是BLAST的安装和使用方法:
安装BLAST
1. 使用Conda安装(推荐)
如果你使用的是conda环境,安装BLAST非常简单,只需一行命令:
conda install -c bioconda blast
这将从Bioconda通道安装BLAST,包括所有必要的依赖项。
2. 手动安装
你也可以从NCBI的官方网站下载BLAST的源代码或预编译的二进制文件,并手动安装。下载链接为:
[NCBI BLAST Executables](https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/)。
对于Ubuntu环境,你可以按照以下步骤安装:
下载BLAST
wget -c https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.9.0/ncbi-blast-2.9.0+-x64-linux.tar.gz
解压BLAST压缩包
tar -xzvf ncbi-blast-2.9.0+-x64-linux.tar.gz
测试安装是否成功
./bin/blastp -h
如果能够显示帮助信息,则表示安装成功。

5.2 使用方法

使用BLAST
1. 创建数据库
使用makeblastdb命令创建BLAST数据库,这对于本地BLAST搜索是必需的。以下是创建核酸数据库的示例:
makeblastdb -in your_sequence_file.fasta -dbtype nucl -out your_database_name
其中your_sequence_file.fasta是你的FASTA格式的序列文件,your_database_name是你想要创建的数据库名称。
 2. 进行序列比对
创建好数据库后,你可以选择不同的BLAST工具进行序列比对,例如blastn、blastp等。以下是一个使用blastn进行搜索的示例:
blastn -query your_query_sequence.fasta -db your_database_name -out results.out
其中your_query_sequence.fasta是你的查询序列文件,your_database_name是你创建的数据库名称,results.out是输出结果文件。
 3. 更新和安装nt/nr库
如果你需要使用nt(核酸)或nr(非冗余蛋白)数据库,可以通过以下步骤安装和更新:
首先,配置环境变量.ncbirc,指定BLAST数据库的位置。
然后,使用update_blastdb.pl脚本自动下载和更新数据库。
以上是BLAST的基本安装和使用方法,更多详细信息和高级功能可以参考NCBI官方文档:[BLAST Command Line Applications User Manual](https://www.ncbi.nlm.nih.gov/books/NBK279690/)。

6.BLAST数据库的构建:

  BLAST数据库分为核酸数据库和氨基酸数据库,可以用makeblastdb创建。

makeblastdb是一个用于创建 BLAST 数据库的命令行工具。这个数据库可以是蛋白质序列的,也可以是核苷酸序列的,创建之后,就可以使用 BLAST 工具(如 blastn、blastp、blastx、tblastn和tblastx)进行序列比对。以下是makeblastdb的一些基本用法和参数:
基本用法
makeblastdb -in <input_file> -dbtype <protein/nucleotide> -out <output_database_name>
-in <input_file>:指定输入文件,即包含序列的 FASTA 格式文件。
-dbtype <protein/nucleotide>:指定数据库类型,protein表示蛋白质数据库,nucleotide表示核苷酸数据库。
-out <output_database_name>:指定输出数据库的名称。
### 附加参数
-title <database_title>:为数据库设置标题。
-logfile <file_name>:指定日志文件的名称,用于记录数据库创建过程中的信息。
-import_id:使用输入序列文件中的 ID 作为数据库中的序列 ID。
-max_file_sz <size>:设置文件大小限制,单位可以是 mega(MB)或giga(GB)。
-parse_seqids:解析序列标识符以提取额外信息,如物种名称和隔离地点。
-hash_index:创建哈希索引以加速搜索。
-mask_data <file_name>:指定一个文件,其中包含用于过滤序列的掩码数据。
-mask_algo <algorithm>:指定用于掩码低复杂度区域的算法,如seg、dust、windowmasker、none。
### 示例
创建一个蛋白质序列的 BLAST 数据库:
makeblastdb -in my_proteins.fasta -dbtype protein -out my_proteins_db -title "My Protein Database"
创建一个核苷酸序列的 BLAST 数据库,并使用seg算法掩码低复杂度区域:
makeblastdb -in my_nucleotides.fasta -dbtype nucleotide -out my_nucleotides_db -title "My Nucleotide Database" -mask_algo seg
使makeblastdb创建的数据库可以被 BLAST 工具用来快速检索和比对序列。创建数据库是一个一次性的过程,一旦数据库被创建,就可以多次用于不同的 BLAST 搜索,而无需重新创建。

7.BLAST结果的解读:

评价BLAST结果的标准主要有E值(Expect)、一致性(Identities)、缺失或插入(Gaps)。这些信息提供了BLAST工具的基本介绍和使用指南,可以帮助用户了解BLAST的功能和如何应用它进行序列比对。

上期提到的Barrnap进行抽提ITS,16S。有些从全基因组没有抽提到,可以选用Blast建立本地库,进行比对,复制序列到NCBI进行比对。

二、在线blast使用方法

在线地址:BLAST: Basic Local Alignment Search Tool (nih.gov)

一些专业搜索的模式,可以进行引物设计

可以根据自己的需要查看结果。其中,Expect(E值)和Identities(一致性)是评价blast结果的标准。E值接近零或者为零时,说明比上的序列很接近;一致性:匹配上的碱基数占总序列长的百分数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值