本发明涉及基因检测技术领域,特别是指一种基因分析注释方法和装置。
背景技术:
基因测序是一种新型基因检测技术,能够从血液或唾液中分析测定基因全序列,预测罹患多种疾病的可能性,个体的行为特征及行为合理,如癌症或白血病,运动天赋,酒量等。基因测序相关产品和技术已由实验室研究演变到临床使用,现有技术中,已经存在一些基于基因测序的基因分析注释服务,其一般是借助基因测试资料,分析并注释出变异基因,为用户提供相应的基因分析注释报告。但现有的由于基因注释的数据库的内容较为单一,且基因注释时使用的规则较为简单,使得基因分析注释的效果低下,且准确性不高。
技术实现要素:
有鉴于此,本发明的目的在于提出一种基因分析注释方法和装置,能够准确、高效的进行基因分析注释。
基于上述目的本发明提供的一种基因分析注释方法,包括:
从至少一个现有基因数据库中抓取第一基因数据;
将所述第一基因数据以统一格式存储,并构建注释基因数据库;
获取用于描述基因组变异的标准文件,从所述标准文件中提取检索值;根据所述检索值,在所述注释基因数据库中检索得到第二基因数据;其中,所述检索值包括:变异位点的染色体编号、变异位点的起始位置、参考基因组的碱基、变异位点的碱基;
根据所述第二基因数据,对所述标准文件进行变异基因注释,生成基因分析注释结果报告。
在一些实施方式中,所述从至少一个现有基因数据库中抓取第一基因数据包括:
获取所述现有基因数据库中多个页面的url地址;
根据预设的抓取规则,抓取目标页面;
对所述目标页面进行解析,获得所述第一基因数据。
在一些实施方式中,所述第二基因数据包括:
变异在单核苷酸多态性数据库中的编号、基因id、基因名称、人类基因组变异协会的变异命名规则、突变类型、变异位点所处的染色体区段、等位基因突变频率、等位基因状态、遗传模式、在线人类孟德尔遗传数据库编号。
在一些实施方式中,所述根据所述检索值,在所述注释基因数据库中检索得到第二基因数据之后,还包括:
若所述第二基因数据的数据量小于预设阈值,则将变异位点反转为负链碱基并重新根据所述检索值,在所述注释基因数据库中检索以获取所述第二基因数据。
在一些实施方式中,所述根据所述第二基因数据,对所述标准文件进行基因注释,生成基因分析注释结果报告之后,还包括:
过滤掉所述基因分析注释结果报告中测序深度小于10×的数据项;
过滤掉所述基因分析注释结果报告中外显子上下游5bp至10bp以外的数
据项;
过滤掉所述基因分析注释结果报告中记载同义突变的数据项。
另一方面,本发明还提供了一种基因分析注释装置,包括:
抓取模块,用于从至少一个现有基因数据库中抓取第一基因数据;
构建模块,用于将所述第一基因数据以统一格式存储,并构建注释基因数据库;
检索模块,用于获取用于描述基因组变异的标准文件,从所述标准文件中提取检索值;根据所述检索值,在所述注释基因数据库中检索得到第二基因数据;其中,所述检索值包括:变异位点的染色体编号、变异位点的起始位置、参考基因组的碱基、变异位点的碱基
注释模块,用于根据所述第二基因数据,对所述标准文件进行变异基因注释,生成基因分析注释结果报告。
在一些实施方式中,所述抓取模块具体用于:获取所述现有基因数据库中多个页面的url地址;根据预设的抓取规则,抓取目标页面;对所述目标页面进行解析,获得所述第一基因数据。
在一些实施方式中,所述第二基因数据包括:变异在单核苷酸多态性数据库中的编号、基因id、基因名称、人类基因组变异协会的变异命名规则、突变类型、变异位点所处的染色体区段、等位基因突变频率、等位基因状态、遗传模式、在线人类孟德尔遗传数据库编号。
在一些实施方式中,所述检索模块还用于:若所述第二基因数据的数据量小于预设阈值,则将变异位点反转为负链碱基并重新根据所述检索值,在所述注释基因数据库中检索以获取所述第二基因数据。
在一些实施方式中,所述装置还包括:过滤模块,用于过滤掉所述基因分析注释结果报告中测序深度小于10×的数据项;过滤掉所述基因分析注释结果报告中外显子上下游5bp至10bp以外的数据项;过滤掉所述基因分析注释结果报告中记载同义突变的数据项。
从上面所述可以看出,本发明提供的基因分析注释方法和装置,通过从现有基因数据库中抓取用于变异基因注释的第一基因数据并构建专用的注释基因数据库;然后通过检索值在注释基因数据库检索得到用于注释标准文件的第二基因数据,并对标准文件进行变异基因注释,最终生成基因分析注释结果报告。相比于现有技术,本发明能够更加准确、高效的进行基因分析注释。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的基因分析注释方法流程图;
图2为本发明实施例的基因分析注释装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
本发明实施例提供了一种基因分析注释方法。参考图1,为本发明实施例的基因分析注释方法流程图。
所述基因分析注释方法,包括以下步骤:
步骤101、从至少一个现有基因数据库中抓取第一基因数据。
本步骤中,所述的现有基因数据库一般包括:clinvar,千人基因组,cgd数据库,此外还可以包括:权威基因数据开源网站数据和公开的基因科学文献数据。抓取的第一基因数据是上述现有基因数据库中与基因变异相关的数据。
进一步的,上述抓取第一基因数据的过程具体包括步骤:
获取所述现有基因数据库中多个页面的url地址。其中,抽取现有基因数据库中所有页面的url地址,将其以队列形式排列,并依次进行后续处理。
根据预设的抓取规则,抓取目标页面。其中,所述抓取规则为url地址中的指定字段。例如,只抓取以:“www.wegene.com/demo”为开头的url地址。
对所述目标页面进行解析,获得所述第一基因数据。其中,根据不同页面的数据类型,相应解析不同内容的数据。具体的,对于标准html类型的页面,其一般是区分群组的检查项目页面(如耳垢类型),此类页面解析数据包括:检查项目、项目描述、基因位点、基因型、基因名、基因描述、参考文献名称、参考文献链接;对于特殊html类型的页面,其一般是非遗传特征页面,此类页面解析数据包括:基因位点、基因型、基因名、基因描述。
在实际进行数据抓取时,还可以采取如下的具体工具或算法:
采用heritrix3+jsoup的开源工具进行抓取。heritrix是java编写的爬虫框架,扩展性好,可设置输出日志,归档文件和临时文件的位置,可以通过浏览器访问后台查看抓取任务信息。jsoup是java的html解析器,用于解析html文本内容,方便获取和操作数据。
使用elfhash算法重写heritrix队列主键生成策略进行数据抓取。elfhash算法取得字符串对应的hash值,比较均匀地把字符串分布在散列表中,重写后可以配置多线程同时抓取,速度提升15倍。
优化delayfactor因子抓取算法性能,通过反复测试,delayfactor因子值设置为10,可以在快速抓取数据的前提下防止url被封。
由于不同地域的网站的robots规范不一致,会导致过滤无效url时间过长。因此优化heritrix对robots文件的处理,优化此方法后,过滤时间缩短了10s。
优化预取链、提取链、抽取链,增加根据基因网站的过滤规则,在每个处理链中增加对无效url的过滤,增加次过滤规则后,过滤时间能够缩短5s左右。
在本步骤的抓取过程中,还可以对抓取的结果(抓取、解析成功或失败)进行存储,生成日志文件,方便后期的维护处理。
步骤102、将所述第一基因数据以统一格式存储,并构建注释基因数据库。
本步骤中,由于抓取获得的第一基因数据来自不同的现有基因数据库,则需要对其进行统一格式后再存储。然后,使用第一基因数据,构建生成注释基因数据库,供后续的步骤使用,为基因分析注释提供相关的基因变异数据。
步骤103、获取用于描述基因组变异的标准文件,从所述标准文件中提取检索值;根据所述检索值,在所述注释基因数据库中检索得到第二基因数据;其中,所述检索值包括:变异位点的染色体编号、变异位点的起始位置、参考基因组(reference)的碱基、变异位点的碱基。
本步骤中,首先获取用于描述基因组变异的标准文件(vcf文件,variantcallformat)。然后,从标准文件中提取检索值,该检索值用作在注释基因数据库检索获得第二基因数据的检索依据。经过分析研究,本实施例中确定了检索值的具体内,包括:变异位点的染色体编号(chrom)、变异位点的起始位置(pos)、reference的碱基(ref)、变异位点的碱基(alt),这四列值可以确定变异的唯一位置以及变异结果,并且这四个值在注释数据库中可以找到对应的内容,能够用来做匹配关联。
根据上述检索值,利用perl语言的哈希匹配,匹配到注释基因数据库中,提取相应的第二基因数据,第二基因数据的具体内容如下:
rs#(dbsnp):变异在单核苷酸多态性数据库(dbsnp数据库)中的编号(referencesnp,rs号);
geneid:基因id;
genesymbol:基因名称;
hgvs(c.):人类基因组变异协会的变异命名规则,c.代表编码dna序列;
hgvs(p.):人类基因组变异协会的变异命名规则,p.代表蛋白质;
type:突变类型;
cytogenetic:变异位点所处的染色体区段;
allelefrequency:等位基因突变频率;
allelestatus:等位基因状态(杂合/纯合);
inheritance:遗传模式;
omim:在线人类孟德尔遗传数据库编号(omim编号)。
进一步的,在本步骤中,为了进一步提升基因注释的质量,在检索获得第二基因数据之后,若所述第二基因数据的数据量小于预设阈值,则将变异位点反转为负链碱基并重新根据所述检索值,在所述注释基因数据库中检索以获取所述第二基因数据。由于本实施例中,检索值由染色体编号,变异位点的起始位置、参考基因组的碱基、变异位点的碱基组成,用这四个值取提取第二基因数据,如果某个检索值没有提取到相应信息(或较少),就将检索值里面的参考基因组碱基,变异位点碱基按照a<->t,g<->c的碱基配对原则转变为相应负链上的碱基,然后与染色体编号,变异位点起始位置组成新的4个值的检索值,再进行一次第二基因数据的提取。按负链再检索一次的原因是检测数据库中存在有负链的变异信息。通过上述方法能够有效的提升第二基因数据提取的数量和质量。
步骤104、根据所述第二基因数据,对所述标准文件进行变异基因注释,生成基因分析注释结果报告。
本步骤中,根据在注释基因数据库检索得到的第二基因数据,对所述标准文件进行变异基因注释,最终生成基因分析注释结果报告。基因分析注释结果报告作为基因分析注释服务的最终产品,可以直接提供给用户。
其中,利用perl语言的dbi模块将提取的结果导入到相应的mysql数据库中。由于报告数据库类型是mysql数据库,库中存放了生成报告所需要的数据内容,将注释的结果导入到这个mysql数据库中,然后生成最终的基因分析注释结果报告。
进一步的,在本步骤中,为保证结果的准确性及有效性,对注释出来的结果进行过滤,过滤条件如下:
为保证变异检测结果的准确,过滤掉reads支持数偏低的变异位点,设置过滤测序深度小于10×的变异结果。每个检测到的变异位点都有相应数量的reads覆盖,如果覆盖的reads数量过低,该变异就可能不准确,有可能是测序错误导致的,因此,reads覆盖数量过低的变异位点可信度低,为保证变异检测结果的准确,要过滤掉reads覆盖数量偏低的变异位点,设置过滤reads覆盖条数小于10的变异位点。
为更准确快速找到与疾病相关的突变,保留外显子区域及剪接位点区的突变,过滤掉外显子上下游5bp至10bp(其中,优选为10bp)以外的变异注释结果,过滤掉同义突变(不导致氨基酸变化的突变)的变异。由于在外显子捕获过程种可能捕获到外显子两侧区域,导致检测到非外显子区域的变异,要去掉这部分的变异,保留外显子区域及剪接位点区的突变,剪接位点区域一般在外显子上下游10bp(basepair)左右的位置,因此,设置过滤掉外显子上下游10bp(basepair)以外的变异注释结果,同时变异位点包含同义突变和非同义突变的两种类型,同义突变不导致氨基酸变化,属于非致病变异,因此这里设置过滤掉同义突变的变异
另一方面,本发明实施例还提供了一种基因分析注释装置。参考图2,为本发明实施例的基因分析注释装置结构示意图。
所述基因分析注释装置,包括:
抓取模块201,用于从至少一个现有基因数据库中抓取第一基因数据;
构建模块202,用于将所述第一基因数据以统一格式存储,并构建注释基因数据库;
检索模块203,用于获取用于描述基因组变异的标准文件,从所述标准文件中提取检索值;根据所述检索值,在所述注释基因数据库中检索得到第二基因数据;其中,所述检索值包括:变异位点的染色体编号、变异位点的起始位置、参考基因组的碱基、变异位点的碱基
注释模块204,用于根据所述第二基因数据,对所述标准文件进行变异基因注释,生成基因分析注释结果报告。
优选的,所述第二基因数据包括:变异在单核苷酸多态性数据库中的编号、基因id、基因名称、人类基因组变异协会的变异命名规则、突变类型、变异位点所处的染色体区段、等位基因突变频率、等位基因状态、遗传模式、在线人类孟德尔遗传数据库编号。
优选的,所述检索模块203还用于:若所述第二基因数据的数据量小于预设阈值,则将变异位点反转为负链碱基并重新根据所述检索值,在所述注释基因数据库中检索以获取所述第二基因数据。
优选的,所述基因分析注释装置还包括:过滤模块205,用于过滤掉所述基因分析注释结果报告中测序深度小于10×的数据项;过滤掉所述基因分析注释结果报告中外显子上下游5bp以外的数据项;过滤掉所述基因分析注释结果报告中记载同义突变的数据项。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。