发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种基于一代测序的基因突变分析方法,能准确识别碱基突变位点,大大减少判读突变意义的时间,提高判读效率以及判读准确性。
本发明还提供基于一代测序结果的基因突变分析装置。
本发明还提供用于执行上述基因突变分析方法的计算机设备以及计算机可读存储介质。
根据本发明的第一方面实施例的一种基于一代测序的基因突变分析方法,所述方法包括以下步骤:
S1:读取一代测序数据,将碱基信号峰图转化为碱基序列,得到碱基序列集合;
S2:将所述碱基序列集合中的待分析碱基序列与参考基因组上对应的参考碱基序列进行比对,并获取所述待分析碱基序列在所述参考基因组上的位置信息,得到突变位点集合;
S3:对所述突变位点集合中的突变位点进行注释,得到基因突变分析结果。
根据本发明实施例的控制方法,至少具有如下有益效果:
一代测序的数据为碱基信号峰图,储存的是测序时每个碱基的信号峰的强弱,通过判断A、T、C、G四种碱基的每种碱基信号峰的高低来决定每个位点的碱基序列。当峰形图某个位点中存在两个以上的峰,则该位点可能是一个真实的突变位点,也可能是测序造成的无意义的噪音信号。传统的判断方式是通过人工判断,这一步依靠个人的判读经验,判读经验不足的人会存在较大的误判几率。
实施例的基因突变分析方法通过识别信号峰,并以大批量的数据归纳峰型特征,通过机器学习训练模型构建判读信号峰是否为真实突变位点的分类器,保证了多态性位点的准确性和一致性;且实现了注释突变的所有相关信息的自动化过程,省去了大量的人工查阅时间。实施例的基因突变分析方法能准确识别碱基突变位点,大大减少判读突变意义的时间,提高判读效率以及判读准确性。并且,该分析方法能够同时处理多个一代测序数据,同时给予多方位的位点突变意义的解读,大大减少人工投入的同时还保证数据解读的一致性。
根据本发明的一些实施例,所述一代测序数据的命名规则具体为:将主要信息通过两个括号括起来;
所述主要信息包括样本编号、基因名和外显子编号;
第一个括号内包括样本编号、基因名、外显子编号和第二个括号,其中,基因名和外显子编号位于第二个括号内。由此,能够使识别突变的程序自动处理Sanger测序仪下机的所有数据,再结合计算装置的计算系统以及自编脚本,从而能够并行处理多个下机数据并一次性输出给解读人员。大大提高了数据分析的效率。
根据本发明的一些实施例,步骤S1具体为:读取一代测序数据,将碱基信号峰图转化为碱基序列,并根据碱基信号峰图的信息数据,利用训练好的机器学习模型构建碱基序列集合。
根据本发明的一些实施例,步骤S1中,将碱基信号峰图转化为碱基序列通过sangerseqR包实现。
根据本发明的一些实施例,所述碱基信号峰图的信息数据包括碱基信号峰的量化值、位点信息、套峰与主峰的比值中的至少一种。
根据本发明的一些实施例,步骤S1中,读取的所述一代测序数据包括:测序结果对应的碱基信号峰图、样本名、基因名和外显子编号。
根据本发明的一些实施例,步骤S2中,所述比对通过Smith-Waterman算法进行。由此,解决了人工判读INDEL时判读难度大的问题,极大提升了INDEL判读的准确性与效率。
根据本发明的一些实施例,步骤S3中,通过annovar软件进行注释。
根据本发明的一些实施例,所述机器学习模型为线性支持矢量分类器。
根据本发明的一些实施例,所述参考碱基序列的获取方法包括:根据步骤S1中读取的所述一代测序数据,通过bedtools软件在参考基因组中获取。
根据本发明的一些实施例,所述基因突变分析结果包括突变位点相对测序结果起点的距离,ATCG各碱基信号峰量化值,套峰相对于主峰的比例,样本名,突变位点所在染色体,突变位点的起始位点,突变位点在参考基因组上的碱基,突变位点碱基,基因名称,突变位点所在基因元件,突变引起的外显子的功能改变,HGVS数据库注释,COSMIC数据库注释,氨基酸变化注释。
根据本发明的第二方面实施例的基于一代测序结果的基因突变分析装置。包括:
二进制数据转化文本数据单元,用于将碱基信号峰图转化为碱基序列,得到碱基序列集合;
序列比对信息单元,用于将所述碱基序列集合中的待分析碱基序列与参考基因组上对应的参考碱基序列进行比对;
变异位点位置配对单元,用于获取所述待分析碱基序列在所述参考基因组上的位置信息;
变异位点检测单元,用于得到突变位点集合;
变异位点注释信息单元,用于对所述突变位点集合中的突变位点进行功能注释;
信息汇总输出单元,用于汇总二进制数据转化文本数据单元、变异位点位置配对单元和变异位点注释信息单元的分析结果,得到基因突变分析结果。
由于基因突变分析装置采用了上述实施例的基因突变分析方法的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果。
根据本发明的第三方面实施例的计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面实施例所述的基因突变分析方法的步骤。由于计算机设备采用了上述实施例的基因突变分析方法的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果。
根据本发明的第四方面实施例的计算机可读存储介质,存储有计算机程序,所述计算机程序用于执行如上述第一方面实施例所述的基因突变分析方法。由于计算机可读存储介质采用了上述实施例的基因突变分析方法的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
本发明的描述中,需要说明的是,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
需要注意的是,下述附图中所示的框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本实施例提供一种基于一代测序的基因突变分析方法。
1、构建计算装置以及相应平台。
该计算装置用于实现基于一代测序结果的基因突变分析。如图1所示。
该计算装置包括如下组件:
计算机可读存储介质,用于保持和存储由指令执行设备使用的指令,包括随机存取存储器103(RAM)和只读存储器102(ROM);
至少一个中央处理器101(CPU),用于根据存储在计算机可读存储介质中的计算机程序指令,来执行各种适当的动作和处理;
输入设备104,用于输入数据;
输出设备105,用于输出数据;
存储设备106,用于存储数据;
通信设备107,用于经由诸如因特网的网络执行通信处理;
其中,输入设备104、输出设备105、存储设备106和通信设备107均连接至IO(输入/输出)接口109;
CPU 101、ROM 102以及RAM 103通过总线108彼此相连;IO接口109也连接至总线108。
具体地,输入设备104包括键盘、鼠标等;输出设备105包括液晶显示器、扬声器等;存储设备106包括硬盘等;通信设备107可以为包括LAN(局域网,Local Area Network)卡、调制解调器等的网络接口卡。
计算装置上需要安装相应的软件组成生物信息分析平台,以实现对一代测序数据的基因突变分析。
需要安装的软件有:R、perl、Annovar、bedtools、R包sangerseqR、R包stringr、R包seqinr。
需要下载得到的数据库有:人类基因组序列hg19版本、人类基因组注释gtf文件、dbsnp数据库、cosmic92数据库、SuperDups数据库、1000g数据库、gnomad数据库、intervar数据库。
2、自动化读取一代测序突变位点信息
(1)通过R包sangerseqR读取一代测序的下机数据,将测序数据的碱基信号峰信息转化为碱基序列文本信息,并用R包stringr、R包seqinr对sangerseqR转化得到的结果进行整理,将无法直接识别的数据转化为常见的fasta格式序列文件。
(2)利用Smith-Waterman(SW)算法将上述步骤(1)得到的碱基序列文本信息与参考基因组中的目标序列进行局部序列相似性比对。
具体为:首先根据多重设计位点的位置信息(包括样本的基因名称和外显子编号等)用bedtools软件提取参考基因组中相应的参考序列,然后将fasta格式序列文件与目标序列进行局部相似性比对。
SW算法是基于动态规划算法原理设计的,核心思想为将长串的序列分解为一个个单碱基序列,通过解决每个单碱基序列的最佳比对,从而一步步的获取最优解的长序列比对结果。SW算法的原理说明如下:
1)假设参考序列A的核苷酸序列为a1a2…an,需要比对的序列B的核苷酸序列为b1b2…bm。
其中,n和m分别是参考序列A与比对序列B的核苷酸总数。
2)初始化一个分数矩阵f,使行表示字符ai,列表示字符bj。
其中,i代表A序列中每个碱基的对应位置,j代表B序列中每个碱基的对应位置。矩阵公式1如下所示:
如上述公式1所示,在序列相似性比对中,通常有三种比对情况:即match(参考碱基与目标碱基完全一致),mismatch(参考碱基与目标碱基不匹配)和indel(参考碱基与目标碱基存在插入或者缺失)。针对这三种比对情况设置不同的得分,具体如下:
3)将序列A的每个碱基分别与序列B的每个碱基,基于上述打分矩阵以及打分规则进行比对打分。以序列A(核苷酸序列:5’-ATCGAG-3’)和序列B(核苷酸序列:5’-ATGCCGAG-3’)为示例。得到的矩阵示意如图2所示:
在开始比对打分之前,对两个序列的每个碱基位点的初始打分都设为0。如图2的蓝色部分所示。例如:序列A的第一个碱基a1与序列B的第一个碱基b1的打分如下(其中,i=1,j=1):
由于每个碱基位点的初始打分都为0,即f(0,1)=0,f(1,0)=0,f(0,0)=0,而序列A的第一个碱基与序列B的第一个碱基均为A,即匹配,所以match=1,根据公式2,indel=-2。
然后将这些值代入公式3中得到如下结果:
所以在图2中红色位置填入1。
以此规则依次计算出矩阵中所有的值。
最后通过回溯得分矩阵,从得分值最高的点开始回溯(对应图2中的4所在的单元格),找到图2中4对应单元格的左上方位置,左边位置,上方位置三个单元格中最大的值,在该示例中,最大值出现在左上方位置,值为3,依次类推,直到遇到0值终止,至此获取打分最高的最优解,即得到最佳的局部序列匹配结果,至此完成比对分析。比对结果示意如下:
序列A:AT--CGAG;
序列B:ATGCCGAG。
(3)通过SW算法的比对结果文件中的比对位置以及目标基因在基因组中的位置,计算出突变位点在整个基因组上的位置,得到突变相关的信息。该步骤通过perl语言自编脚本完成统计过程,最终输出突变的所有文本信息存储到计算装置的计算机可读存储介质中。
具体计算公式如下:
其中,Pchr是突变位点在基因组上的染色体,P’chr是目标序列在参考基因组上的染色体;Pstart和Pend分别是突变位点在基因组上的起始位点和终止位点,P’start是目标序列在参考基因组上的起始位点,Prela是突变位点相对于目标序列起始位点(P’start)的距离,Plen是突变位点的长度。
例如,基因X在人类基因组第4号染色体上,即P’chr=4,起始位点是1000000,即P’start=1000000;基因X发生了某个A>G的突变,即Plen=1,该突变位点在从基因X的起始位点开始计数的第100个位置上,即Prela=100,那么该A>G的突变位点则在人类基因组第4号染色体上即Pchr=4,起始位点Pstart=1000100,终止位点Pend=1000101。
3、自动化注释突变相关信息
通过自编脚本将上述步骤2得到的突变相关的信息转化为annovar软件的输入格式,利用annovar软件以及下载的数据库进行生物信息注释,从而得到突变位点详细的生物学意义。并进一步利用自编脚本,将所有的突变信息以及注释的生物信息合并为一个txt文本文件,供人工最终解读。
4、批量化同时处理多个下机数据
对多个待分析数据文件进行命名。通过统一命名,可以直接处理一代测序的下机数据而无需人工输入样本名、基因等信息,再结合自编脚本实现自动化。
命名规则具体为:在文件命名过程中将主要信息通过两个小括号括起来,便于统一读取后进行处理。第一个小括号内包括样本编号、基因名和外显子编号,其中,基因名和外显子编号通过第二个小括号括起来。
需要说明的是,命名的名称仅由字母、数字、下划线或其组合组成。
以“0024_31422011400758_(L2201223S1(U2AF1_2))_[U2AF1(2)R].ab1”为例,该样本的样本编号为L2201223S1,涉及的基因名为U2AF1,该基因位于第2号外显子上。
实施例1
本实施例针对十个一代测序样本进行自动化识别突变并注释,这十个待分析的一代测序样本的数据文件的样本名如下:
0007_31422011400744_(L2201216S1(JAK2_12))_[J12F3].ab1;
0009_31422011400745_(L2201216S1(MPL_10))_[MPL515R].ab1;
0010_31422011400746_(L2201216S1(CALR_9))_[CALR1F].ab1;
0001_31422011400739_(L2201204S1(JAK2_14))_[J14R2].ab1;
0002_31422011400740_(L2201204S1(JAK2_12))_[J12F3].ab1;
0004_31422011400741_(L2201204S1(MPL_10))_[MPL515R].ab1;
0005_31422011400742_(L2201204S1(CALR_9))_[CALR1F].ab1;
0001_31422011400756_(L2201223S1(SF3B1_14))_[SF3B1exon14F].ab1;
0002_31422011400759_(L2201223S1(U2AF1_6))_[U2AF1exon6R].ab1;
0015_31422011400751_(L2201223S1(IDH1_4))_[IDH1F3].ab1。
图3是根据一示例性实施方式示出的一种用于实现基于一代测序结果的基因突变分析流程。
用于实现基于一代测序结果的基因突变分析装置包括:二进制数据转化文本数据单元201、序列比对信息单元202、变异位点位置配对单元203、变异位点检测单元204、变异位点注释信息单元205和信息汇总输出单元206。
其中,二进制数据转化文本数据单元201,用于将碱基信号峰图转化为碱基序列,得到碱基序列集合;
序列比对信息单元202,用于将所述碱基序列集合中的待分析碱基序列与参考基因组上对应的参考碱基序列进行比对;
变异位点位置配对单元203,用于获取所述待分析碱基序列在所述参考基因组上的位置信息;
变异位点检测单元204,用于得到突变位点集合;
变异位点注释信息单元205,用于对所述突变位点集合中的突变位点进行功能注释;
信息汇总输出单元206,用于汇总二进制数据转化文本数据单元、变异位点位置配对单元和变异位点注释信息单元的分析结果,得到基因突变分析结果。
具体分析包括以下步骤:
1、从sanger测序仪上下机一代测序数据,通过网络或者硬盘将测序数据转存到存储装置中。
2、计算装置从存储装置中读取测序数据,根据数据文件的名称提取所有样本的样本名、基因名称以及外显子信息,并将这些信息存储到计算装置的存储设备106中。
3、通过二进制数据转化文本数据单元201将测序数据的碱基信号峰信息转化为碱基序列文本信息。这一步通过R包sangerseqR完成信号峰的读取,提取出每个位点的每种碱基信号的量化值,再将量化值、位点信息、套峰与主峰的比值等信息输入到机器学习构建的模型中,以判断每个位点的真实碱基,最后将转化得到的碱基序列文本信息传递到序列比对信息单元202。
4、序列比对信息单元202主要通过计算装置中的CPU 101资源,利用自编脚本实现SW算法,以对一代测序得到的序列信息与人类参考基因组上对应的基因序列进行局部相似性比对。将序列比对的结果输出到变异位点位置配对单元203。
该步骤在自编脚本中的具体实施过程如下:
通过步骤2中得到的基因名称以及外显子编号,利用bedtool软件在参考基因组中提取该目标参考序列。将参考序列作为序列A,测序序列作为序列B,通过打分矩阵进行打分,最终得到最佳序列比对结果。统计突变的相关信息输出到变异位点位置配对单元203。
5、在变异位点位置配对单元203,通过自编脚本,将序列比对的相对位置转化为在基因组上的绝对位置,获得突变位点在整个基因组上的位置。同时记录下测序序列的位点位置与基因组的位置的对应关系。将变异位点在基因组上的绝对位置以及突变信息输出到变异位点检测单元204。
6、在变异位点检测单元204中,通过自编脚本整和所有可能是突变的位点相关信息,并将数据格式整理为annovar软件识别的格式后,输出到变异位点注释信息单元205。
annovar的输入格式示例如表1所示。其中,第一列为突变位点所在染色体,第二列为突变位点的起始位点,第三列为突变位点的终止位点,第四列为参考序列中的对应碱基,第五列为突变位点的碱基。
表1
7、变异位点注释信息单元205通过软件annovar以及计算装置上安装的多种数据库,利用计算装置的CPU 101资源对突变位点在多个数据库中的注释信息进行识别并存储。最终通过自编脚本,将所有的注释信息整理为人类可读的文本文件,输出到信息汇总输出单元206。
8、信息汇总输出单元206集合步骤3、5、7的结果,利用自编脚本将所有信息汇总为完整的突变信息,输出给人工进行最终的解读。
最终包含的完整突变信息包括:突变位点相对测序序列起点的距离,ATCG各碱基信号峰量化值,套峰相对于主峰的比例,样本名,突变位点所在染色体,突变位点的起始位点,突变位点的参考碱基,突变碱基,基因名称,突变位点所在基因元件,突变引起的外显子的功能改变,HGVS数据库注释,COSMIC数据库注释,氨基酸变化注释。
检测例
采用上述实施例提供的分析方法与人工处理方法分别对已知突变位点的1个样本、10个样本和100个样本进行基因突变分析,比较两种处理方法的处理时间和准确度。
比较结果如表2和表3所示。
表2样本处理时间对比表
表3样本处理准确度对比表
由表2和3可知,上述实施例提供的分析方法的处理时间短,在处理大批量数据时,花费的时间仅为人工处理方法的3%~12%;相比于人工处理方法,能够准确检出更多的突变位点,具有更好的敏感度。其中,检出率的计算方法为:检出率=检出的突变个数/预期突变个数。
需要说明的是,上述分析所用的CPU为64核CPU,256G内存。若扩大计算资源,大批量样本的处理时间可进一步压缩,进一步提高分析效率。
上面结合附图对本发明实施例作了详细说明,但本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。