numpy序列预处理dna序列_【陪你学生信】七、在数据库中检索相似的序列

一、相似度Similarity

序列的分析离不开相似度这个指标,相似度比较高的序列往往具有相似的结构、执行相似的功能。所以用未知序列blast得到的结果可以对未知序列进行推测。

当两个序列非常相似时,生物学家称之为同源。然而有一点不明确,就是什么程度的相似可以称之为“非常”相似呢?书上说一般长度为100以上核苷酸序列或者氨基酸序列,序列之间的一致度(identical)大于70%(nt)或25%(aa)可以推测同源。

不过有时,一致度或相似度很高的两个序列也有可能非同源,这种进化上的“趋同”现象可能是随机产生的,这样的一对序列可称为同功序列。或者序列相似度很低,但是蛋白质三维结构几乎一样的情况也有。分析的时候还要结合E-value,两序列中可对应的序列长度占两序列的比例,插入和删除的残基个数等一起判断是否是同源。推荐阅读往期推送【现学现卖】序列比对之identity VS similarity,【现学现卖】序列比对之bit-score VS E-value。

二、最棒的序列比对工具没有之一——BLAST

之前第六章主要介绍了分析一条氨基酸序列理化性质,结构域的方法。这章说说序列比对,比对就不得不用BLAST。NCBI中蛋白质相关的blast有:blastp(用氨基酸序列在氨基酸数据库中比对),tblastn(用氨基酸序列在核苷酸数据库中比对)。

1. NCBI-blastp

https://blast.ncbi.nlm.nih.gov/Blast.cgi?PROGRAM=blastp&PAGE_TYPE=BlastSearch&LINK_LOC=blasthome

以序列号P09405的氨基酸序列为例进行blastp。

54a750de1495017909c4816a5a174e34.png

很快返回结果页面,点击按钮可以展开一些折叠的结果,还有filter工具筛选你感兴趣的东西。

fdab36715877e988d87bf8a82d85eb33.png

上图标记黄色的都可以点开看看,比如Graphic Summary打开后如下图。彩色部分展示的是数据库中得到的序列与查询序列(query sequence)比对的位置,不同的颜色体现相似程度/得分。前面的几个序列与查询序列匹配程度很高,后面短的粉色部分的信息也并不是没有用处,比如可以帮助我们找到蛋白质结构域。

72ab2205e9f7c131f89b8fbc033c99b5.png

在Alignments里,上方是查询序列,下方是匹配序列,中间那栏,如果是字母则表示匹配,如果是➕表示是相似氨基酸残基,如果是空则表示未匹配上。

c5ef1b3ea2d89070042db3a4d6479609.png

2. NCBI-blastn

BLASTing DNA序列和蛋白质序列很类似,而且如果你知道DNA序列的ORF,可以翻译成氨基酸序列使用blastp,获得更加准确的结果。

DNA序列比对可用blastn,还有tblastx和blastx,这里面的t表示translated,就是你输入DNA序列,在blast之前会有工具将其翻译,再进行blast比对。tblastx数据库是TDNA数据库(系统将nt翻译为aa的一个数据库),blastx数据库是氨基酸序列库。至于不同情况用什么工具,见下图。

12a52af067a5b7eaa3f52edbe40a9442.png

3. 用BLAST方式思考问题(一些BLAST可以解决的问题)

(1)在基因组中寻找目标基因

可以将基因组分为多条两端互相重叠的序列(2-5kb),然后用blastx在NR库(the Non Redundant protein database)中检索。

(2)预测蛋白质功能

用blastp在Swiss-Prot数据库中检索,你输入的蛋白序列可能拥有和高分结果相似的功能。

(3)预测蛋白质三级结构

用blastp在PDB数据库中检索,道理同(2)

4. 使用BLAST前可以设定的参数

一般情况下进行BLAST,会对organism进行限定,其他参数维持默认。那么什么情况下需要修改默认参数呢?比如没有返回结果或者结果的E-value数值大,可以更改矩阵或空位罚分;或者返回太多结果,则可以限定所使用的数据库、关键词、E值等。

(1)blastp

一些蛋白质序列的某一部分复杂程度比较低(low-complexity/ low-entropy),一种或几种氨基酸残基在一段区域内富集。这样两个序列比对会产生高分结果,但是它们很可能毫不相干。为了避免这个问题,可以勾选Algorithm parameters——filters and mask高级选项——“low complexity regions”,过滤这样的比对结果。

b13afaceec1fbb7c3ebb4f4d129a58da.png

(2)blastn

对于DNA序列,限定的参数页面如下,其中word size是指开始一段比对的序列长度,size越大,比对速度越快、精度越低。

5961a30af8a9bf5d54e638df8c01916e.png

三、PSI-BLAST简单介绍

在blastp下方算法选择里,还有PSI-BLAST。即Position-Specific Iterated BLAST,位点特异性迭代BLAST。

先BLAST 到一系列相似序列,并对其中每一个位置上的元素构建PSSM矩阵。继续进行第二轮blast,再加上新搜索出来的序列结果构建新的PSSM矩阵。这样迭代,直到无法搜索出新的结果为止或者直到获得了足够的序列为止。

BLAST的结果都是相近序列,使用PSI-BLAST可以帮助我们找到远缘序列。

7faa95a7f5359357d8b1284d53fbad30.png

其他操作和BLAST类似,点击BLAST返回结果页面如下。

8615f55a2e30caa4ae28a2c1e1ed41d5.png

然后可以点击Run PSI-Blast iteration 2开始迭代,直到没有新的序列产生或产生的序列数目满意为止。迭代产生的序列,系统会自动标黄。

4aad5a6cd48646c6f3369ca56962a77c.png

4286dc0915e4648a6b3b25e6b87b5756.png

这里需要解释一下,如果选择了这条序列构建PSSM矩阵,那么迭代之后,序列后面会有绿色圆形对勾,如果像我这次没有勾选(荧光黄色的4条序列),则这些序列不参与构建矩阵。实际操作时,如果第N次迭代新增加的序列结果明显不对,则不勾选它构建矩阵,剩下的序列构建的矩阵进行下一次分析。

当输入的查询蛋白质序列包含多个结构域时,输出结果可能不太可信。因为很多八竿子打不着的蛋白质也会有相似结构域。这时候可以根据第六章里面寻找结构域的方法,找到结构域的位置,将长蛋白质序列根据结构域分割为片段,进行blast。这种分割分析也适用于大于200aa的蛋白质序列。

往期相关内容:

【陪你学·生信】序

【陪你学·生信】一、生信能帮我们做什么

【陪你学·生信】二、一些你肯定会用到的生信工具和基本操作

【陪你学·生信】三、核苷酸序列数据库的使用

【陪你学·生信】四、蛋白质相关的数据库

【陪你学·生信】五、当你有一段待分析的DNA序列(基础操作介绍)

【陪你学·生信】六、当你有一段待分析的氨基酸序列 (基础操作介绍)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值