BWT比对算法

简介

BWT算法在多款序列比对软件(BWA,bowtie)中都有涉及,那么对于RNA-seq的2代数据,一般建库长度是单端300bp,双端各150bp左右。

序列比对

对于两个序列进行比对,即pairwise alignment,我们可以按比对方式分为全局比对(NW算法)和局部比对(SW算法):


当然对于两条短序列,可采用上述算法进行比较,但是如果其中一条序列换成了较长的参考基因组序列,而另一条为fq文件的reads序列,采取这样的方式比对就会显得很慢

因此,为了提高效率,我们首先需要根据参考基因组建立index,然后在Seq 2里面取出一个短序列作为seed,通过seed于ref 的index建立联系,再通过ref index找到附近的序列,然后进行pairwise alignment
那么,建立ref index是通过说明方法建立的呢?

1. 第一代软件

比方说SOAP:



它把参考基因组分成一个个小片段,并且将这些小片段建立成hash关系,也就是说我在序列比对的时候,只要我获取到reads的内容,我就可以match(翻译为完全比对?)到参考基因组上,并获得其位置信息。

2.第二代软件

这里介绍的是BWA,bowtie。而这两款软件除了要对基因组建立index以外,还采用的是BWT算法来实现比对。

(1).什么是BWT算法


step1:假设我有一段序列: ACAACG
那么我们在序列后面加一个“$”符号:

step2
之后,“$”符号向后平移一个单位,得到 :

“$”符号再向后平移一个单位:得到:



以此类推,最终得到:


这样的序列的排序表,接下来按照字母顺序进行排序($,A,C,G,T)有:



这个矩阵我们称之为转换矩阵
我们根据F列和L列元素的相对位置就可以推导出该序列的全部信息:
首先,我们单独取出F列和L列


在F列和L列中找到“$”,连接它们,那么在水平位置对应于的G(蓝色箭头)

这个G就是“$”前面的元素:



接下来在F列中找到元素G:



此时F列的G对应L列的C(蓝色箭头),此时序列为:

此时按照上述方法,才F列中找到元素C,由于L列中的元素C为第二个C(上面G后面的C视为第一个C),所以应该对于F列的第二个C



那么此时在L列里面对应元素A:

接下来L列第三个A对应F列第三个A,因此以此类推就可以最终还原(最终对应于L列的$):



(2).如何实现BWT比对

比方说我现在有一条短序列CAA要比对到ACAACG上,首先说明的是在比对过程中,CAA是反向进行比对的,即A->A->C
由于CAA第一个比对的元素是A,在F列中有三个A,因此我们分类讨论
选择第一个A:



此时比对结果为ACA,不符合
选择第二个A:


结果为$,不符合

选择第三个A:



此时比对结果为CAA,符合原序列

在现实中,CAA可以想象为fq文件reads,ACAACG可以想象为参考基因组,并且在比对中会存在mismatch和gap这种情况的发生,因此软件会对每一种比对的情况进行打分,择优处理

目前 bowtie 是没有gap这一项设定的

参考:https://www.bilibili.com/video/av15743137/

刘小乐哈佛大学课程:https://www.bilibili.com/video/BV1De411s71p

https://www.bilibili.com/video/BV1d4411E7uS?from=search&seid=7482313674070699968

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