在线双序列比对工具

EMBL全局双序列比对工具

Gap的类型及分值设置

调整gap open和gap extend以达到期望的比对结果。

EMBL局部序列比对工具

其他在线双序列比对工具

软件名

比对类型

EMBL

Global/Local

PIR

Global

Lalign

Global/Local

LAGAN

Global

AlignMe

Alignment of Membrane Proteins

MCALIGN

Alignment of non-coding DNA sequences

Biotools

Global/Local

BLAST搜索

BLAST是怎样工作的

在实际应用中,更多时候,输入值是一条序列。想要找到这条序列在数据库中的相关注释,是不能把这条序列直接放到搜索条里搜索的。这个时候就得用 BLAST 搜索了。

BLAST(Basic Local Alignment Search Tool,基本局部比对搜索工具)是目前最常用的数据库搜索程序。

BLAST基本原理很简单,它的要点是片段对的概念。所谓片段对是指两个给点序列中的一对子序列,它们的长度相等,且可形成无空位的完全匹配。


python实现双序列比对 双序列比对结果_大数据

图 1 片段对

BLAST首先找出探测序列和目标序列间所有的匹配程度超过一定阈值的序列片段对,然后对片段对根据给定的相似性阈值进行延伸,得到一定长度的相似性片段对,最后给出高分值片段对。


python实现双序列比对 双序列比对结果_大数据_02

图 2 高分值片段对

BLAST的种类

BLAST实际上是综合在一起的一组工具的统称,它不仅可用于直接对蛋白质序列数据库和核酸序列数据库进行搜索,而且可以将带搜索的核酸序列翻译成蛋白质序列后再进行搜索,或反之,以提高搜索效率。

  • Blastp:用蛋白质序列搜索蛋白质序列数据库。
  • Blastn:用核酸序列搜索核酸序列数据库。
  • Blastx:将核酸序列按6条链翻译成蛋白质序列后再搜索蛋白质序列数据库。其意义在于从核酸序列数据库里找不到跟你手里这条核酸序列相似的序列,或找到了相似的序列但这些找到的序列无法提供有意义的注释信息。这时,就可以去蛋白质数据库试试,看看这条核酸序列的翻译产物能不能从蛋白质数据库里找到相似的序列以及有意义的注释信息。或者说,你不是想找跟你这条核酸序列相似的核酸序列,而是想找跟你这条核酸序列编码蛋白质相似的蛋白质序列。
  • Tblastn:用蛋白质序列搜索核酸序列数据库,数据库中的核酸序列要按6条链翻译成蛋白质序列后再搜索。
  • Tblastx:将核酸序列按6条链翻译成蛋白质序列后搜索核酸序列数据库,数据库中的核酸序列要按6条链翻译成蛋白质序列后再搜索。

PSI-BLAST

有时基本的BLAST搜索不能满足需要。比如,你想通过一条蛋白质序列,搜索出一个庞大的蛋白质家族。如果运行基本的BLAST搜索,你只能找到那些和搜索序列十分相近的序列,而其他那些远亲就找不到了。换言之,你找到了你直接认识的朋友,而朋友的朋友都丢掉了。

PSI-BLAST 的特色是搜完一遍再搜一遍,且从第二次搜索开始,每次搜索前都利用上一次搜索到的结果创建一个位置特异权重矩阵以扩大本次搜索的范围。如此反复直至没有新的结果产生为止。

PHI-BLAST

PHI-BLAST能找到与输入序列相似的并符合某种特定模式(pattern)的序列。比如,N-糖基化位点基序总是符合以下特点模式:以Asn开始,然后紧跟除了Pro之外的任何一个氨基酸,再紧跟Ser或者Thr,再紧跟除了除Pro外的任何一个氨基酸。

三种BLAST的区别


python实现双序列比对 双序列比对结果_机器学习_03

图 3 三种BLAST的区别

我在德国时养的一只宠物仓鼠,叫大腮帮子。在我离开德国时,它的血脉已经延续到第四代了,而且这只仓鼠还是华人论坛宠物评选的冠军宠物。不幸的是,这只仓鼠有一天误食了有毒的花草,英年早逝。我很想念它,于是决定再培养一支冠军仓鼠。打开宠物网站,输入了大腮帮子的照片,想买只差不多的。标准 BLAST 返回的结果中基本都是仓鼠,但种类不同,有很像的,也有一般像的。我发现其他种类的仓鼠也挺可爱的,比如金丝熊。那干脆扩大一下范围,看看还有什么可爱的小家伙。于是进行了 PSI-BLAST,这下可好,除了仓鼠,米老鼠,老鼠玩具,鼠标什么的也都被找出了。当然除了这些不靠谱的,也有靠谱的被找到了,比如 chinchilla!可是,太贵了,买不起,还是买个和大腮帮子一模一样的吧,至少要具备它最受欢迎的特征,这样才能成为冠军仓鼠。于是进行了PHI-BLAST,并且输入特征模式:三线-大眼睛-长胡子-雄性。这次 PHI-BLAST 终于帮我找到了一只合适的仓鼠。