【技术实现步骤摘要】
一种基于长读数和contig分类的scaffolding方法
本专利技术涉及生物信息学的序列组装领域,特别是一种基于长读数和contig分类的scaffolding方法。
技术介绍
基因组一般是指全部编码和非编码的脱氧核糖核酸(DNA)序列,它是由四种碱基:腺嘌呤(A)、胸腺嘧啶(T)、胞嘧啶(C)与鸟嘌呤(G)组成的序列,即基因组序列是一个字符串,这个字符串中只包含四个字符A,T,G,C。在实际基因组序列中也包含另一个字符N,代表该位置的碱基无法确定。基因组DNA序列包含了遗传和调控信息,引导生物发育与生命机能运作。在基础生物学研究和众多应用领域中,如诊断、生物技术、法医生物学、生物系统学中,完整和正确的基因组DNA序列已成为不可缺少的知识。通过基因组测序,可以获得大量基因组序列上碱基序列片段(读数或read)。序列组装是通过这些得到的序列片段还原整个基因组DNA序列的方法。而由于重复区、测序错误以及测序不均衡等问题,序列组装方法往往先生成一些比较独立和零散的序列片段,即contig,这些contig可能分布在基因组DNA序列的任意区域,并且由于DNA序列是双链结构,这些contigs可能处在双链上的任意一条链上。scaffolding方法就是确定这些contigs之间的方向和顺序关系,进而产生更长的scaffold。scaffolding会使序列组装结果更加连续和完整,这有助于后续基因识别,基因组比对,结构变异检测等研究,是序列组装研究中的热点之一。目前,以Illumina/Solexa以及AB/SOLid公司为代表的第二代测序技术在显著降低成本的同时 ...
【技术保护点】
1.一种基于长读数和contig分类的scaffolding方法,其特征在于,包括以下步骤:1)首先将长读数比对到contig集合上,并生成局部scaffold集合;1.1)利用比对工具BWA,把长读数集合比对到contig集合上,生成比对结果。其中只考虑长度大于Lr的长读数和长度大于Lc的contig,Lr=500,Lc=3000。1.2)针对一条长读数,抽取出所有能够比对到它上的contig集合,并计算比对区间位置。如果没有或者只有一条contig比对上,则该条长读数不做后续处理。如果有两条或者更多条contig能够比对上,则根据该条长读数和这些contig之间的比对位置和方向信息,确定这些contig之间的先后顺序和方向,并生成一条局部scaffold。当处理完所有的长读数后,生成一个局部scaffold集合。2)contig分类;如果一条contig出现在两条或者更多条局部scaffold的中间位置(即在一个局部scaffold中,它既不是第一个,也不是最后一个contig),并且在不同的局部scaffold中紧邻它5’端(或者3’端)的contig并不全一样,则该条conti ...
【技术特征摘要】
1.一种基于长读数和contig分类的scaffolding方法,其特征在于,包括以下步骤:1)首先将长读数比对到contig集合上,并生成局部scaffold集合;1.1)利用比对工具BWA,把长读数集合比对到contig集合上,生成比对结果。其中只考虑长度大于Lr的长读数和长度大于Lc的contig,Lr=500,Lc=3000。1.2)针对一条长读数,抽取出所有能够比对到它上的contig集合,并计算比对区间位置。如果没有或者只有一条contig比对上,则该条长读数不做后续处理。如果有两条或者更多条contig能够比对上,则根据该条长读数和这些contig之间的比对位置和方向信息,确定这些contig之间的先后顺序和方向,并生成一条局部scaffold。当处理完所有的长读数后,生成一个局部scaffold集合。2)contig分类;如果一条contig出现在两条或者更多条局部scaffold的中间位置(即在一个局部scaffold中,它既不是第一个,也不是最后一个contig),并且在不同的局部scaffold中紧邻它5’端(或者3’端)的contig并不全一样,则该条contig是重复contig。或者一条contig的长度小于MIN,MIN=2000,则也认为该条contig是重复contig。剩下的contig为非重复contig。当处理完所有的contig后,则所有的contig被分成两类:重复contig和非重复contig。3)构建和优化scaffold图;3.1)首先针对每个非重复contig构建一个节点;针对两个非重复contig,判断它们是否同时出现在同一条局部scaffold中,如果可以,则根据比对信息,确定这两个非重复contig之间的方向和顺序信息,并计算它们之间的距离。然后判断它们之间是否能够添加一条边,并确定边的权重。当处理完所有的两两节点后,则一个初始scaffold图构建完成。3.2)scaffold图中每条边约束了其相连接两个节点之间的方向、顺序和距离信息,因此根据scaffold图中所有的边,构建线性规划模型,检测和移除造成方向和顺序冲突的边,保证scaffold图中不存在方向和顺序冲突。3.3)消除冲突后,在scaffold图中,如果存在多个节点同时和某个节点的5’端(或者3’端)相连,则只保留权重最大的边,剩余的边进行移除。通过上述步骤的处理,scaffold图中只包含简单路径。4)生成scaffold集合;scaffold图中的一条简单路径包含了节点的顺序和方向信息,以及相邻节点之间的距离信息,因此每条简单路径对应一个scaffold,并生成一个scaffold集合。针对两个在scaffold中紧邻的非重复contig,如果一条局部scaffold包含它们,并且在该局部scaffold中它们之间包含的全部是重复contig,则这些方向和顺序确定的重复contig是一个插入候选项。如果两条非重复contig出现在多条局部scaffold中,则每条局部scaffold对应一个插入候选项,则选择具有最多频次的插入候选项插入到这两个非重复contig中间。如果最多频次的插入候选项有多个,则这两个非重复contig不进行插入操作。当处理完所有的相邻非重复contig后,生成最终的scaffold集合。其中contig为基因组序列片段;scaffold为基因组超长序列片段;scaffolding方法是指用于确定各条contig的方向,以及它们在基因组序列上的先后顺序,从而产生一些基因组超长序列片段,即scaffold的方法。一条序列的最左端是其5’端,最右端是其3’端。2.根据权利要求1所述的基于长读数和contig分类的scaffolding方法,其特征在于,所述步骤1.2)具体为:1.2.1)根据比对工具BWA产生的比对结果,如果一条长读数和一个contig能够比对上,可以得到其比对区间的位置和比对方向。假设第j条长读数(lrj)和第i个contig(ci)能够比对上,并且在lrj上的比对区间是[SPR(ci,lrj),EPR(ci,lrj)],在ci上的比对区间是[SPC(ci,lrj),EPC(ci,lrj)]。由于长读数的测序错误率比较高,所以比对工具给出的比对区间位置往往具有一些偏差。本方法采用下述步骤对比对区间进行修正。如果SPR(ci,lrj)<SPC(ci,lrj),则SPC’(ci,lrj)=SPC(ci,lrj)-SPR(ci,lrj),SPR’(ci,lrj)=0。如果SPR(ci,lrj)>=SPC(ci,lrj),则SPR’(ci,lrj)=SPR(ci,lrj)-SPC(ci,lrj),SPC’(ci,lrj)=0。如果LEN(lrj)-EPR(ci,lrj)>LEN(ci)-EPC(ci,lrj),则EPC’(ci,lrj)=LEN(ci)-1,EPR’(ci,lrj)=EPR(ci,lrj)+LEN(ci)-EPC(ci,lrj)。如果LEN(lrj)-EPR(ci,lrj)<=LEN(ci)-EPC(ci,lrj),则EPC’(ci,lrj)=EPC(ci,lrj)+LEN(lrj)-EPR(ci,lrj),EPR’(ci,lrj)=LEN(lrj)-1。如果|SPR(ci,lrj)-SPR’(ci,lrj)|<α,或者|SPC(ci,lrj)-SPC’(ci,lrj)|<α,或者|EPC(ci,lrj)-EPC’(ci,lrj)|<α,或者|EPR(ci,lrj)-EPR’(ci,lrj)|<α,则认lrj和ci无法比对上,本方法忽略该比对,其中α是一个参数(α=500)。经过上述修正后,本方法可以得到长读数和contig之间的比对区间,以及比对方向。1.2.2)如果一条长读数上只能够比对上一条contig,则该条长读数不做后续处理。如果有两个或者更多个contig能够比对到该条长读数上,则根据这些contig在该长读数上比对区间的起始位置,由小到大对它们进行排序。如果有多条contig能够同时比对到该条长读数的5’端(或者3’端),则只保留一条具有最长比对区间的conti...
【专利技术属性】
技术研发人员:罗军伟,王俊峰,张波,张霄宏,贾利琴,
申请(专利权)人:河南理工大学,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。