生信杂谈:怎样定义sequences比对的相似度?


继上周后,介绍完Heng Li大神的bioawk之后,继续在他的博客闲逛,读到一篇简单也很有趣的文章。下面我会总结一些该文章的要点,和大家分享分享。希望大家可以从该文章中学到一些知识。

概念介绍

首先,本文的关键词,什么是Sequence identity?简单来说Sequence identity就是两个序列之前的相似度,简单易懂。通常来说序列之间的相似度就是序列错误的反面。

引入

目前,有好几种不同的方式去计算序列的相似度。下面会和大家一步一步来探索:

首先给大家一个例子,以下两段序列的相似度是多少?

CCAGTGTGGCCGATACCCCAGGTTGGCACGCATCGTTGCCTTGGTAAGC
CCAGTGTGGCCGATGCCCGTGCTACGCATCGTTGCCTTGGTAAGC

要是按照最经典的方式去计算相似度,第一步当然是做比对,然后如果我们定义:能比对上的序列(match=1)给一分
,比对不上扣两分(mismatch=-2),存在gap的(gapOpen=-2)扣两分还有存在gap延长的(gapExt=-1):

Ref+:  1 CCAGTGTGGCCGATaCCCcagGTtgGC-ACGCATCGTTGCCTTGGTAAGC 49
         |||||||||||||| |||   ||  || ||||||||||||||||||||||
Qry+:  1 CCAGTGTGGCCGATgCCC---GT--GCtACGCATCGTTGCCTTGGTAAGC 45

对你Ref序列和比对序列,这里我们可以看到有43个是比对上的碱基,1个是比对错误的,然后5个缺失还有一个插入。这个比对结果对应的CIGAR是18M3D2M2D2M1I22M。这里这两个序列的相似度是45/49=91.8%

如果你不知道什么是CIGAR,这里简单介绍一下:CIGAR就是一行数字和字母,用来浓缩介绍你比对的结果。例如上面的18M3D2M2D2M1I22M,就一一对应了每一段比对的结果,前18个碱基是比对上ref序列的,所以是18M,接着是有三个缺失,对应3D,以此类推。你可以通过CIGAR快速的了解到比对的结果。

好继续回归正题,一般来说序列的相似度可以分为以下三代类:

  • Gap-excluded identity
  • BLAST identity
  • Gap-compressed identity

Gap-excluded identity

Gap-excluded identity顾名思义就是在计算序列相似度时候不考虑gap的存在。具体让我们看看上面的例子,如果我们不考虑gap上面的碱基的话,上面的相似度就会改变为43/(43+1)=97.7%,比上面提升了不少。在一篇猩猩的基因组文章中有这样的一句话

Single-nucleotide substitutions occur at a mean rate of 1.23% between copies of the human and chimpanzee genome

这里的SNP substitution rate就是基于gap-excludeed的相似度得出的结果(差别会小很多)。

BLAST identity

BLAST identity是我们平常使用得比较多的一个。BLAST identity是根据你比对到的碱基除去比对所涉及到的columns数目,换句话来说就是比对涉及到所有的碱基数目。

用上面的例子来讲解一下,其BLAST identity会是43/50=86%。我们可以通过sam file的信息进行BLAST identity的计算,在sam file中,我们可以通过叠加CIGAR中对应的M/I/D的数目来计算。然后比对到的碱基数目等于column的总长度,减去NMtag(比对不上的碱基位置的标记)。这一步可以通过单行perl command来实现:

perl -ane 'if(/NM:i:(\d+)/){$n=$1;$l=0;$l+=$1 while/(\d+)[MID]/g;print(($l-$n)/$l,"\n")}'

虽然BLAST identity可能是最常见最常用的一种定义,但是在不同情况我们一定要小心对其的使用。下面例举一些我们需要注意的情况:

假设我们正在比对一个1000bp的序列,这个序列中间含有一个~300bp的ALU插入。BLAST identity的值大概会在70%左右,这段序列很可能会被过滤掉。但是问题来了,在进化中,一个ALT的插入往往是在一个进化事件中产生的,所以这300bp不应该被看作300个碱基独立的缺失。用BLAST indentity在这种情况下就会不太合理,有些不该被过滤的序列会被过滤掉。

Gap-compressed identity

那上述的问题该怎么解决,这里大神提出,这种Gap-compressed identity的方法会更加合理。这种方法是将连续的gap看成一个base的不同。

现在比对就变成这样了:

Ref+:  CCAGTGTGGCCGATaCCCcGTtGCTACGCATC-TTGCCTTGGTAAGC
       |||||||||||||| ||| || |||||||||| ||||||||||||||
Qry+:  CCAGTGTGGCCGATgCCC-GT-GCTACGCATCgTTGCCTTGGTAAGC

其相似度就变成43/(50-2-1)=91.5%。将连续的gap变成单一的base,总长度分别减少了2和1。然后大神将这种计算方式也运用到了他最新的工具minimap2中。

Effect of scoring

大神在最后还说了关于分数的问题,他提到就算你只有一个定义的方法,但是不同的扣分,加分制度会非常影响你比对相似的大小。

比如,将gapOpen=-4,出现gapOpen减4分。

Ref+:  1 CCAGTGTGGCCGATaCCCcaggtTGgcACGCATCGTTGCCTTGGTAAGC 49
         |||||||||||||| |||     ||  ||||||||||||||||||||||
Qry+:  1 CCAGTGTGGCCGATgCCC----gTGctACGCATCGTTGCCTTGGTAAGC 45

这个比对的BLAST identity是83.7% 其gap-compressed 的identity会是89.1%,对比上面相似度不同程度的降低了。

小结

当你估算序列间的相似度的时候,不同的定义计算方式还有不同的比对打分都会影响你的相似度的结果。所以在比较序列间相似度时,要选取切当的方法,并保持方法和分数一致。

原文链接:
http://lh3.github.io/2018/11/25/on-the-definition-of-sequence-identity

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,176评论 5 469
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,190评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,232评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,953评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,879评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,177评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,626评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,295评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,436评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,365评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,414评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,096评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,685评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,771评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,987评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,438评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,032评论 2 341

推荐阅读更多精彩内容