Efficient assembly of nanopore reads via highly accurate and intact error cor通过高度准确和完整的错误校正有效组装纳米孔读数

Efficient assembly of nanopore reads via highly accurate and intact error correction

通过高度准确和完整的错误校正有效组装纳米孔读数

  • 陈英,
  • 范妮锇,
  • 尚钱西锇,
  • 郑英峰,
  • 戚大,
  • 托马斯·布雷,
  • 耀汪鑫,
  • 建丰兴,
  • 志坚黄,
  • 王德鹏,
  • 丽娟他,
  • 罗峰,
  • 建新王,
  • 刘以智&
  • 肖传乐 

自然通讯 卷 12,产品编号:  60(2021) 

抽象

长的纳米孔读数在从头基因组组装中是有利的。但是,纳米孔读取通常具有广泛的错误分布和较高的错误率子序列。现有的错误校正工具无法有效地校正纳米孔读数。大多数方法都会在纠错期间修剪高错误率的子序列,从而减少读断的长度最终装配的连续性。在这里,我们开发了一种纠错和从头组装的工具,旨在克服纳米孔读取中的复杂错误。我们提出了一种自适应读断选择两步渐进方法,可以快速正确地校正纳米孔读数。我们介绍了一个两阶段的汇编程序,以利用全长的纳米孔读数。我们的工具在纠错和从头组装纳米孔读数方面均具有卓越的性能。组装35X覆盖率的人类基因组仅需8122个小时,就能将NG50提高2.47倍。此外,我们组装的人类WERI细胞系显示NG50为22 Mbp。纳米孔读段的高质量组装可以显着减少结构变异检测中的假阳性

介绍

种群中的物种或个体的基因组序列的重组是基因组学中最重要的任务之一123由太平洋生物科学公司和Oxford Nanopore公司开发的单分子测序(SMS)技术可以产生长序列,可以显著增加可解决的重复基因组区域的数量,并提高组装的连续性4567。但是,SMS读取通常具有较高的错误率8。目前,从SMS读取中进行从头基因组组装的两种策略是“先校正后再装配”和“先装配后再校正”。组装器,例如Falcon9号,Canu10和MECAT 11,首先校正SMS读数,然后使用校正的读数组装基因组。相反,诸如miniasm 12,Flye 13,wtdbg2 14,Shasta 15,Smartdenovo 16和Raven 17之类的组装程序,使用容易出错的读数组装基因组,然后校正组装的基因组。由于纠错的计算成本较高,因此“先组装后校正”方法通常比“先组装后校正”方法要慢。然而,利用易出错的SMS读直接组装基因组会增加基因组序列中的组装错误,从而影响参考基因组的质量,导致下游分析的偏倚,特别是在复杂的基因组区域1018。在另一方面,“修正然后组件”的方法可提供高度连续和精确的基因组组装91011

从牛津纳米孔技术最近发布的R9流动池可以产生读取高达1M的长度,并用读N50> 100kb的,其可以显著的提高组装的邻接56719。但是,纳米孔读数的错误比PacBio读数2021的错误更复杂(请参阅“结果”)。当前组装程序中的错误校正工具最初是为PacBio SMRT(单分子实时)读断设计的,无法有效校正纳米孔读断。例如,使用Canu中的纠错工具纠正30倍的人类纳米孔读数覆盖率需要29 K中央处理单元(CPU)小时19。而且,由Canu校正的读数的平均身份仅为92%,远不及校正后的PacBio SMRT读数的准确性。校正后的纳米孔读取中的这些高错误率会引入组装错误。此外,通常在纠错过程中对纳米孔读数中的HERS进行修整,从而减少了原始读数的长度和最终装配的连续性。

在这项工作中,我们开发了NECAT,这是一种纠错和从头组装的工具,旨在克服纳米孔读取中复杂错误的问题。与现有的迭代校正纳米孔读数的错误校正工具不同,我们开发了一种用于纳米孔读数校正的两步渐进方法。第一步,NECAT校正读取的低错误率子序列(LERS),而第二步,校正读取的高错误率子序列(HERS)。这种渐进的方法使NECAT可以快速校正纳米孔读数,从而获得较高的校正读数准确性。通过对七个数据集进行评估,NECAT能够获得低平均错误率(1.99–9.01%)和高百分比(45.85–99.34%)的校正后错误率小于5%的读数,这两个结果均明显优于你可以吗。为了充分利用纳米孔读取长度,我们在NECAT中提供了一个两阶段的汇编程序,该程序使用校正的纳米孔读取来构建重叠群,然后使用原始的原始读取来桥接重叠群。我们还使用自适应选择机制为纠错期间要校正的每个读取(模板读取)选择高质量的支持读取,并在读取重叠步骤中为每个读取选择高质量的重叠。与诸如Canu和Canu + Smartdenovo(Canu + S)之类的“先组装然后再组装”的汇编程序相比,NECAT的速度提高了2.5–258倍,同时保持了相似的汇编质量。与Flye这样的“先组装再校正”组装商相比,NECAT报告的复杂基因组组装错误组装数量明显减少。它使用校正的纳米孔读数构建重叠群,然后使用原始原始读数桥接重叠群。我们还使用自适应选择机制为纠错期间要校正的每个读取(模板读取)选择高质量的支持读取,并在读取重叠步骤中为每个读取选择高质量的重叠。与诸如Canu和Canu + Smartdenovo(Canu + S)之类的“先组装然后再组装”的汇编程序相比,NECAT的速度提高了2.5–258倍,同时保持了相似的汇编质量。与Flye这样的“先组装再校正”组装商相比,NECAT报告的复杂基因组组装错误组装数量明显减少。它使用校正的纳米孔读数构建重叠群,然后使用原始原始读数桥接重叠群。我们还使用自适应选择机制为纠错期间要校正的每个读取(模板读取)选择高质量的支持读取,并在读取重叠步骤中为每个读取选择高质量的重叠。与诸如Canu和Canu + Smartdenovo(Canu + S)之类的“先组装然后再组装”的汇编程序相比,NECAT的速度提高了2.5–258倍,同时保持了相似的汇编质量。与Flye这样的“先组装再校正”组装商相比,NECAT报告的复杂基因组组装错误组装数量明显减少。我们还使用自适应选择机制为纠错期间要校正的每个读取(模板读取)选择高质量的支持读取,并在读取重叠步骤中为每个读取选择高质量的重叠。与诸如Canu和Canu + Smartdenovo(Canu + S)之类的“先组装然后再组装”的汇编程序相比,NECAT的速度提高了2.5–258倍,同时保持了相似的汇编质量。与Flye这样的“先组装再校正”组装商相比,NECAT报告的复杂基因组组装错误组装数量明显减少。我们还使用自适应选择机制为纠错期间要校正的每个读取(模板读取)选择高质量的支持读取,并在读取重叠步骤中为每个读取选择高质量的重叠。与诸如Canu和Canu + Smartdenovo(Canu + S)之类的“先组装然后再组装”的汇编程序相比,NECAT的速度提高了2.5–258倍,同时保持了相似的汇编质量。与Flye这样的“先组装再校正”组装商相比,NECAT报告的复杂基因组组装错误组装数量明显减少。速度提高5–258倍,同时保持相似的装配质量。与Flye这样的“先组装再校正”组装商相比,NECAT报告的复杂基因组组装错误组装数量明显减少。速度提高5–258倍,同时保持相似的装配质量。与Flye这样的“先组装再校正”组装商相比,NECAT报告的复杂基因组组装错误组装数量明显减少。

结果

纳米孔读段中测序错误的分析

我们分析了测序错误在纳米孔读取大肠杆菌酿酒酵母拟南芥黑腹果蝇莱茵衣藻栽培稻S.潘那利番茄,和智人(NA12878)(补充说明 1 - 5和补充表 1 - 2)。如补充表3所示, 这8个物种的纳米孔读数平均错误率在12.0%(酿酒酵母)到20.1%(拟南芥)之间。)。尽管纳米孔读取的平均错误率与PacBio SMRT读取的错误率相似,但纳米孔读取的错误率比PacBio SMRT读取的错误率分布更广泛。在我们的研究中使用的八个数据集中的原始读取错误率分布在7%至50%之间,集中在10%至20%之间(图 1A和补充表 3)。

图1:八个纳米孔原始读取数据集的误差特征。

图1

一个原始的错误率分布读取。B纳米孔读数中子序列的错误率(上)和读数中高误差子序列的图示(下)。C在500 bp窗口中具有高错误率子序列(HERS),错误率超过50%的原始读取百分比与读取长度的关系图。

接下来,我们分析了每个纳米孔读数中的测序错误。我们首先将每个读数比对参考基因组。我们将每个读数划分为500 bp长的子序列,并计算每个子序列的比对错误率。我们的结果表明,每次读取的错误率也广泛分布(图 1B)。此外,平均而言,长于10 kb的原始读取中,有3–23%的HERS的错误率> 50%(补充表 3)。总体而言,通过超长文库制备技术产生的纳米孔读物具有比使用普通文库制备技术产生的纳米孔读物更高的百分比(23 vs. 3-11%)。此外,HERS的原始读取百分比随着读取长度的增加而增加(图 1C)。尤其是,对于通过超长读取库制备技术产生的读取,长于45 kb的原始读取中有高达45%的样品具有HERS(图 1C)。纳米孔读数中的HERS通常会迫使纠错工具将长读数分成较短的片段,这消除了使用长纳米孔读数进行从头组装的优势。

此外,除拟南芥外,从不同基因组位置采样的纳米孔读数的错误率具有相同的分布,后者在基因组位置之间显示出细微的差异(补充图 1)。这些结果表明纳米孔测序错误没有显示基因组位置偏差。因此,纳米孔数据集可以包含来自基因组相同位置的低错误率和高错误率读取。

总而言之,我们的分析表明,与PacBio读取不同,纳米孔读取可以包含HERS(尤其是超长原始读取),并且在读取和读取子序列之间显示出广泛的错误率分布。

自适应选择支持读段以进行纠错

为了校正纳米孔读数,我们首先收集了与之重叠的支持读数,然后使用重叠读数的多序列比对的共识构建了校正后的读数。通常将重叠错误率阈值设置为选择支持读段。由于纳米孔读段中测序错误率的广泛分布,因此难以使用单个全局重叠错误率阈值来选择支持读段。设置较低的重叠错误率阈值,例如PacBio读取所用的0.3,将无法生成足够的支持读取来校正具有较高错误率(> 20%)的纳米孔读取。因此,许多纳米孔读数无法校正。相反,设置较高的重叠错误率阈值(例如0.6)会导致错误的支持阅读次数显着增加,这增加了计算成本并降低了校正读数的准确性。此外,高重叠错误率阈值可以增加低错误率模板读取的高错误率支持读取的数量。这导致使用高错误率支持读取来校正低错误率模板,这大大降低了校正后的低错误率读取的准确性。

为了克服纳米孔读数的广泛错误率分布,我们通过距离差因子(DDF)评分11和k-mer链22(在线方法)过滤后,使用了两个重叠错误率阈值来选择支持读数。首先,我们使用全局重叠错误率阈值来选择支持读段。对于所有模板读取,其支持读取的重叠错误率需要小于此全局阈值。因此,全局阈值可维持支持读的整体质量。基于原始读取的错误率分布的实验(图 1A),我们将全局重叠错误率阈值设置为0.5。然后,对于每个读取的模板,我们设置一个单独的重叠错误率阈值。对于每个模板阅读,我们选择了DDF得分最高的50个候选阅读,并记录了50个候选阅读与模板阅读之间的比对差异。然后,将单个重叠错误率阈值设置为对齐差异的平均值减去其标准偏差的五倍(请参见“方法”)。

如果候选读取的对齐错误率大于全局或单个重叠错误率阈值,则将其过滤。对于低错误模板读取,单个重叠错误率阈值小于全局阈值。相反,对于高错误率模板读取,单个重叠错误率阈值大于全局阈值。通过使用全局和单个重叠错误率阈值,我们能够为低错误率模板读取率和高错误率模板读取保持支持读取的质量,从而提高了校正后的读取的准确性。没有足够支持读数的高错误率模板读取将被丢弃,而没有进行更正。

纳米孔读数的渐进式纠错

根据每个模板读取的平均错误率选择支持错误校正的读取。由于每个纳米孔读数的子序列的错误率也广泛分布(图 2A),因此支持读数和HERS之间的重叠错误率可能超过全局重叠错误率阈值0.5,这可能会影响校正后的子序列的准确性。因此,我们开发了一种渐进方法,可分两步纠正容易出错的纳米孔读数(请参见“方法”)。我们首先在模板读取中纠正了LERS(图 2B)。然后,我们纠正了HERS(图 2C)。在第一步中,已校正和未校正的子序列都作为下一步的校正读数输出。第一步之后,我们将大多数纳米孔读数校正为高精度。这使我们能够在第二步中获得更多的针对高错误子序列的低错误支持读段,从而有助于纠正高错误子序列。第二步之后,我们仅输出校正后的子序列。如果在第二步中无法纠正模板读取中的子序列,则其错误率较高或覆盖率较低。因此,在第二步之后,一个模板读段可分为多个校正读段。

图2:NECAT渐进式纠错和两阶段组装方法的示意图。

图2

A模板原始读取,用于更正,其中,方框框指示错误,红色矩形为高错误率区域。B低错误率子序列的错误校正。只有低错误率的子序列具有支持的阅读。C高错误率子序列的错误纠正。D使用正确的读数进行重叠群组装。使用原始的纳米孔读数进行E Contig桥接。F输出最终重叠群。

在使用重叠错误率阈值过滤候选读物之后,我们为每个模板读物选择最多200个具有最高DDF得分的候选读物。然后,我们将候选读物与模板读物进行了局部比对(在线方法)。但是,将支持读物与长模板读物进行局部比对在计算上很昂贵。尽管我们为每个模板读取选择了200个支持读取,但是当有足够的读取可用于纠错时,无需对齐所有这些支持读取。根据我们的观察,支持校正的12个读数足以纠正模板读数。因此,我们使用了一个覆盖计数数组(CCA)来记录覆盖本地对齐期间模板读取的每个碱基的支持读取的数量。如果模板读取包含12个支持读取,

逐步组装纳米孔读取

较长的纳米孔读段是从头基因组组装的重要优势。但是,长纳米孔读数中的HERS通常无法校正,导致长纳米孔读数分成几个较短的校正读数。仅将校正的读数用于基因组组装消除了长纳米孔读数所呈现的优势。在这项研究中,我们为纳米孔读取开发了两步式渐进式基因组组装器。在第一步中,我们使用校正后的读数生成了高质量的重叠群(图 2D)。在第二步中,我们使用原始的纳米孔读数桥接了重叠群,以生成最终的支架(图 2E)。)。因此,由原始读物中的HERS引起的重叠群中丢失的连续性在该过程的第二步中得以填补。因此,通过最大化所有原始读段的使用来改善基因组连续性。我们的两步组装过程类似于使用SMS读取脚手架23的过程

同时,即使经过错误校正,校正后的纳米孔读数的测序错误率(1.5-9%)仍高于校正后的PacBio读数(<1%)。错误率高的读段可能会导致低质量的重叠,从而导致较低的身份重叠,较长的突出端和较低的覆盖范围子序列。低质量的重叠会增加组装难度,并在组装结果中引入错误。因此,要获得高质量的重叠群,我们需要在校正的读段之间选择高质量的重叠区。此外,校正后的读数的错误率也显示出相对较宽的分布(补充说明 6和补充表 4)。与用于选择支持读物进行纠错的过程类似,我们采用了全局阈值和单个阈值来克服宽错误率分布,以过滤低质量的重叠(请参见“方法”)。

NECAT纠错性能

我们使用的九个数据集纳米孔的原始读取评估NECAT纠错的性能:大肠杆菌,酿酒酵母,黑腹果蝇,拟南芥莱茵衣藻栽培稻S.潘那利番茄,NA12878(rel3,4 )和NA12878(rel6)有关校正速度,校正后的数据大小,校正后读数的准确性和连续性以及校正后读数中带有HERS的读数数(补充说明 6)。如表1所示, 对于前七个数据集的纳米孔读取,NECAT校正速度比Canu快2.1–16.5倍。的校正的大小读取大肠杆菌,酿酒酵母,黑腹果蝇,拟南芥C. reinhardtiiO。sativaS.pennellii分别占原始读数的102.2%,83.4%,90.6%,92.5%,100.3%,100.7%和91.2%,而Canu仅校正了最长的40倍原始读数。并从原始读数中分别获得了15.9%,39.8%,57.7%,84.1%,31.1%,24.0%和28.3%的校正读数。对于NA12878(rel3,4)和NA12878(rel6),经NECAT校正的读数大小为原始读数的95.1和79.5%。

表1纳米孔读取误差校正的性能比较。

NECAT能够获得高精度的校正读数。第一步之后,大肠杆菌,酿酒酵母,黑腹果蝇,拟南芥莱茵衣藻苜蓿氏酵母的平均错误率数据集分别为4.27%,3.08%,7.03%,11.35%,4.40%,6.45%和9.23%; 这些均低于Canu校正的平均读取错误率,分别为7.06%,3.13%,8.15%,12.05、5.35%,7.99%和9.69%。在第二步之后,七个数据集的平均错误率分别进一步降低到2.23%,1.53%,4.89%,9.01%,1.99%,4.66%和6.45%。对于NA12878(rel3,4)和NA12878(rel6),第一步之后经NECAT校正的读取的平均错误率分别为7.38和6.46%,而第二步之后的平均错误率分别为7.38和6.28%。

在组装过程中,校正后的读数之间的最大重叠错误率通常设置为10%。因此,具有<5%误差的校正读段的百分比越高,更多的读段可用于组装。如表1所示, 前七个数据集的错误率<5%的NECAT校正读取的百分比分别为99.34%,95.04%,72.03%,45.85%,95.18%,74.62%和63.04%。明显高于Canu校正的读数。对于两个NA12878数据集,错误率小于5%的NECAT校正读取的百分比分别为77.60%和75.45%。

NECAT中的渐进式校正策略还使我们能够校正更多的HERS,并保持读段的连续性。前七个数据集经NECAT校正的读数的N50分别为相应原始读数的N50的105.1%,90.5%,98.0%,100.9%,103.7%,100.4%和96.0%,表明NECAT可以保存原始读取的连续性。相反,经Canu校正的读数的N50分别为相应原始读数的91.9%,30.4、85.8、91.8、99.0、97.7和87.3%,比NECAT校正的读数要低。NECAT中的渐进式校正策略可以改善HERS校正的另一个证据是使用HERS的读取次数已减少。使用NECAT进行两步校正后,七个校正数据集中包含HERS的读取数分别为1、268、3481、7158、278、3511和5445,经Canu校正的数据集分别具有包含HERS的1、4820、6523、8722、726、4413和5511读取。这些结果表明,NECAT在纠正纳米孔原始读数中的测序错误方面胜过Canu。对于两个NA12878数据集,经NECAT校正的读数的N50分别为其原始读数的106.7%和121.7%,而包含HERS的读数数量分别为53130和64210。

NECAT de novo汇编器的性能

我们将NECAT与两种广泛使用的正确然后组装的管道:Canu和Canu + S,以及用于纳米孔读头从头组装的正确然后组装的管道(Flye)进行了比较(补充说明 7)。我们使用每个数据集的最长40倍读数,组装了大肠杆菌酿酒酵母拟南芥D。melanogaster莱茵衣藻苜蓿氏酵母的基因组,并为人类组装了35倍的纳米孔数据仅使用NECAT的NA12878基因组。

如表2所示 ,NECAT比Canu快6.5–258.2倍,而在组装步骤中则显示出6.3–577.5倍的加速。Canu在其overlayIncore工具中使用高重叠阈值(14.4%)进行纳米孔读取(组装PacBio读取时使用6%的低阈值),这可能会大大增加局部比对的时间成本。Canu + S管道用Smartdenovo代替了Canu的组装步骤,从而大大减少了运行时间。在七个数据集上,NECAT仍比Canu + S快2.5-57.0倍。NECAT输出的校正读数的高精度使我们能够使用更快速的重叠方法。与Flye相比,NECAT在A. thalianaD. melanogaster莱茵衣藻栽培稻,和S.潘那利番茄,并且比Flye更快224.8和21.2倍的数据集的大肠杆菌酿酒酵母,但Flye是快3.8倍NECAT上的数据集NA12878(REL6)。

表2使用NECAT进行长时间组装的质量和性能。

然后,我们就组装大小,重叠群数,NG50,NGA50,错配数目,QV和基因完整性评估了组装重叠群的质量。如表2所示 ,四个组装管道具有相似的总体性能,而每个组装者都有其长处。CANU + S报道为重叠群的显著较少数量的拟南芥黑腹果蝇S.潘那利番茄,同时NECAT报道为重叠群的显著较小数量的栽培稻和人类。NECAT报道显著更高NG50为黑腹果蝇,栽培稻,和S.潘那利番茄,和Flye报道的更高NG50为NA12879(REL6)。NECAT报告了较高的NGA50大肠杆菌栽培稻,潘那利番茄S.,和Flye报道的更高NG50为NA12879(REL6)。NECAT和Flye都报告了NA12878的NG50和NGA50远高于Canu的报告。NECAT报道两个人的装配错误数量明显减少,而Canu + S和Flye报道的D. melanogaster装配错误数量较少,而Canu报道的拟南芥装配错误数量明显较少。

对于大多数物种,四个管道报告的QV和基因完整性相似。对于O. sativa,即使在抛光后,所有四个装配体的基因完整性也较低,这是由于它们的质量较低。Canu报告了NA12878(rel3,4)更高的基因完整性(86.3%)。尽管抛光组件的QV相似,但误差分布却不同。例如,Canu NA12878(rel3,4)组件中的每100 kbp错配和插入缺失是202和153,而NECAT NA12878(rel3,4)组件中的不匹配和indel是134和210。

接下来,我们评估了重叠群桥接在NECAT装配中的作用。如表3所示, 在重叠原始读段的重叠群拟南芥黑腹果蝇莱茵衣藻苜蓿S.pennellii智人的基因组中的重叠群数目显着减少。对于酿酒酵母S. cerevisiae)黑腹果蝇D. melanogaster),雷氏哈氏菌(C. reinhardtii),彭氏葡萄球菌(S. pennellii)和人NA12878,重叠群桥接也增加了装配的NG50和NGA50。这些结果表明重叠群桥接可以改善组装的连续性。

表3 NECAT桥接步骤前后的从头组装性能。

我们进一步将NECAT汇编程序与其他广泛使用的然后组装正确的汇编程序进行了比较:miniasm,Smartdenovo,wtdbg2,Flye,Raven和Shasta(补充文本1和注 7)。NECAT的时间成本与那些组装正确的组装机相似,但是获得了更好的组装结果,尤其是对于复杂的基因组(补充文本1))。我们还通过将其与参考基因组进行比较来验证我们的程序集。NECAT生成的程序集的质量与其他“先正确后组装”流水线的质量相当,并且比“先正确然后组装”的流水线更好(补充文本2)。我们还测试了混合策略,以显示NECAT的错误纠正和组装步骤的正确性和有效性。这些策略分别将NE​​CAT的纠错步骤与Canu,Smartdenovo和Flye的组装步骤结合在一起,或者将Canu的纠错步骤与Smartdenovo,Flye和NECAT的组装步骤结合在一起。比较的结果在补充文本3中进行了描述。

视网膜母细胞瘤细胞系WERI的从头基因组装配

为了进一步评估NECAT在大基因组装配中的性能,我们对称为WERI的细胞系进行了测序,该细胞系来源于人视网膜母细胞瘤24。我们使用Nanopore PromethION从三个流通池中产生了210 Gb(82倍)的原始读数。NECAT组装的WERI基因组的N50为28M。据我们所知,这是使用纳米孔测序平台的通用文库组装人类基因组的最佳N50值。

我们使用MUMmer(v4.0)25将WERI大会与人类参考基因组hg38进行比对。点状图显示WERI装配与参考基因组在结构上一致,除了微小的结构变化(补充说明 8和补充图 2),而平铺图显示装配的连续性(图 3)。我们还使用bowtie2 26将WERI细胞系的Illumina数据集对齐到WERI程序集和hg38人类参考基因组上。WERI装配体的定位率(99.1%)优于hg38人类参考基因组的定位率(98.0%)。

图3:使用纳米孔读数对WERI细胞系装配进行连续性分析。

图3

使用ColoredChromosomes程序包将人类染色体涂上组装的重叠群。交替的阴影指示相邻的重叠群(每个从灰色到黑色的垂直过渡表示重叠群边界或对齐断点)。

然后,我们在WERI程序集中确定并验证了结构变体(SV)。通过使用MUMmer(v4.0)将其与hg38人类参考基因组对齐,我们在WERI程序集中检测到11,725个SV(≥10 bp)。我们还分别使用Sniffles 27和LUMPY 28从WERI细胞系的原始纳米孔长读取和Illumina短读取中检测到SV (补充注释 8)。使用WERI组件和未加工的纳米孔读数总共检测到7210个SV,而同时使用WERI组件和NGS检测到只有1117个SV(补充图3和补充数据 1)。)。此外,我们可以在WERI程序集中找到90%的使用纳米孔原始读数检测到的独特小SV(<1000 bp),这表明该程序可以减少小型SV(<1000 bp)的假阳性(补充数据 1)。

接下来,我们检查了与鉴定出的SV相关的基因。我们发现使用WERI程序集和未加工的纳米孔读数鉴定出的与7210个SV相关的2843个带注释的基因。Phenolyzer 29报告了2843个基因中的209个,它们与成视网膜细胞瘤有关(补充数据 2)。间66倍的基因,该基因PRKCB,其得分高达在Phenolyzer 0.8901 29,被报道参与成视网膜细胞瘤蛋白磷酸化30。在209个基因中,有8个基因(AATF,PRKCB,PRMT2FRKPIK3R1(CUX1,RAC2和IGF1)的Phenolyzer得分> 0.5,并且八个基因中的六个与视网膜母细胞瘤相关,如PubMed中所述。这些结果表明NECAT可以提供高质量的组件,以可靠地识别SV。

讨论区

目前,由于这些读数中的复杂错误,很难在基因组研究中应用纳米孔读数。在这项研究中,我们的分析表明,纳米孔读段包含HERS,并且错误在纳米孔读段之间以及读段的子序列中广泛分布。这种广泛的错误分布使在纠错过程中支持阅读的选择变得复杂。在传统的纠错方法中,用于选择支持读段的阈值可能设置得太严格或太宽。前者不能选择足够的支持读物进行校正,而后者会产生太多低质量的读物,从而影响校正后的读物的准确性。此外,

在这项研究中,我们开发了NECAT,其中包括诸如渐进式纠错,自适应支持读取和比对选择以及两步组装等方法,以克服纳米孔读取的错误特征。NECAT中的纠错工具比Canu的纠错工具快2.1–16.5倍,可以在保持纳米孔读数连续性的同时,更高精度地校正纳米孔读数。整个管道至少比其他具有正确组装性能的“先组装后再组装”管道快2.5倍。NECAT显示的高性能表明,可以通过开发有关错误特征的算法来克服纳米孔读取的高错误率。

通过原始的纳米孔读数识别的结构变异通常具有很高的假阳性率。在这里,我们表明,通过使用高质量的纳米孔读数组装来检测结构变异,可以大大减少这些假阳性。我们的结果表明,NECAT是用于纠错和组装纳米孔读数以及检测结构变异的有用工具。

方法

NECAT的体系结构

NECAT管道被设计为用于纳米孔读取的高性能汇编器。为了克服纳米孔读取的高错误率,我们开发了几种方法,包括渐进式纠错,自适应支持读取和读取重叠选择以及两步组装。NECAT管道包含四个模块(补充图 4)。):预处理,校正,修整和组装。预处理模块过滤掉简短且格式错误的读取。校正模块使用渐进策略以两个步骤校正纳米孔读数。修整模块从校正的读数中去除低质量的子序列。组装模块构建字符串图,以两个步骤组装基因组。这四个模块可以串联运行以完成组装,也可以独立运行。目前,NECAT是使用纳米孔读数组装大型基因组的最有效工具。

纳米孔读数的渐进式纠错

纳米孔读数之间以及单个纳米孔原始读数中测序错误率的广泛分布是传统迭代错误校正方法通常因纳米孔数据而失败的原因。在这项研究中,我们开发了一种纠正纳米孔读数的方法。我们的渐进式纠错方法涉及两个步骤。首先,我们在阅读中更正LERS。然后,我们使用更敏感的方法纠正该读取中的HERS。这两个步骤都包含相同的四个子步骤:(1)选择候选读物;(2)确定比对质量阈值;(3)选择匹配的读物;以及(4)校正读物。子步骤1、2和4对于这两个步骤都是相同的。在两个步骤的子步骤3中,我们使用不同的方法为每个要校正的读物(模板读物)选择匹配的读物。在第一步中 我们使用严格的选择方法为模板读取的低错误率部分选择匹配的读取。在第二步中,我们使用宽大的方法为模板读取的高错误率部分选择匹配的读取。

候选读物的选择

对于每个模板读取,我们选择与该读取重叠的候选读取。对于每对读取,我们首先使用DDF 11选择得分最高的种子k-mer对,将其用作局部比对的可靠起始位置。但是,错误率的广泛分布降低了相距较远的两个k-mer对的DDF分数的敏感性。这可能会导致误报(补充图 5A)。为了消除误报,我们收集了在DDF评分过程中支持种子k对的所有k-mer对。我们针对所有k-mer对(包括种子k-mer对)对其位置进行了排序,然后将它们链接在一起22。链接过程检查了k-mer对的相对位置,并有助于滤除假阳性(补充图 5B)。然后,我们用剩余的k-mer对更新了种子k-mer对的DDF分数,这进一步提高了候选者选择的敏感性。我们记录了链中第一个和最后一个k-mer对的位置,作为候选读物的近似映射位置。这两个位置,连同种子k-mer对的DDF分数,被用于进一步筛选冗余候选物并鉴定HERS。

确定每个模板读取的单个比对质量阈值

我们选择了用于校正每个模板读物的高质量支持读物。但是,广泛的错误率分布使得很难使用单个全局阈值来选择支持读段。除了将全局重叠错误率阈值设置为0.5外,我们还为每个读取的模板计算了一个局部的单个重叠错误率阈值。对于每个模板读取,我们使用DDF得分最高的50个候选读取进行局部比对。如果局部比对包含模板或候选读物长度的60%以上,则我们记录该比对,以及模板和候选读物之间的差异。如果我们有()记录的对齐方式,它们的差异为nn0≤n≤500≤n≤50d1,d2,…,dnd1,d2,…,dnd_0 = \ mathop {\ sum} \ nolimits_ {i = 1} ^ n d_i / n D = \ sqrt {\ mathop { \ sum} \ nolimits_ {i = 1} ^ n(d_i-d_0)^ 2} d = d_0-5D,我们计算了它们的和标准差。然后,将对齐质量阈值设置为。此阈值为低错误模板读取提供了较低的对齐质量界限。d0=∑ni=1di/nd0=∑i=1n⁡di/nD=∑ni=1(di−d0)2−−−−−−−−−−−−√D=∑i=1n⁡(di−d0)2d=d0−5Dd=d0−5D

选择匹配的读段

对于每个阅读模板,我们最多选择200个具有最高DDF得分的候选阅读以进行局部比对。在第一步和第二步中,我们使用了不同的对齐方法。第一步,我们使用逐块对齐算法将支持的阅读内容与模板阅读内容进行对齐。我们从种子k聚体对在两个方向上进行了局部比对。因此,我们首先获得了两个半全局比对,然后将这两个比对合并为一个。从种子k-mer对开始,我们将模板和候选读段均分为长度为500 bp的相等大小的块。然后,我们使用了Edlib算法31依次对齐每对块。如果一对块之间的对齐误差> 50%,或者如果对齐算法到达模板或候选读取的末尾,则终止对齐过程。因为当来自模板的块或候选块中的任何一个具有较高的错误率时,逐块对齐都会终止,因此我们只能在此步骤中获得LERS之间的对齐。

在第二步中,我们使用了多种比对方法来获得模板与候选读段之间的长比对。我们首先使用逐块方法将候选读段与模板对齐。如果由于模板或候选读物内部存在高错误率区域而导致块对齐方式提前终止,我们将使用DALIGN算法32将候选读物重新对齐至模板。但是,通过DALIGN产生的比对值以0.5的大差异阈值运行时,通常太粗糙了。为了优化DALIGN的比对结果,我们然后使用Edlib算法对DALIGN输出的映射子序列执行全局比对,以获得更正确的比对。

对模板进行支持读的局部比对在计算上是昂贵的,特别是对于长模板读。通常,仅数十个对齐就足以进行错误校正。因此,如果我们有足够的支持读段用于纠错,则无需对齐所有200个候选读段。在这里,我们使用了一个CCA(它是一个与模板读取长度相同的整数数组)来记录覆盖模板读取的每个碱基的候选读取次数。在将候选读物与模板读物对齐之前,我们检查了模板上候选读物的近似开始和结束位置在映射位置之间的CCA元素值。如果所有这些值都大于用户设置的阈值C,我们知道模板读取中的相应区域已被足够的候选读取所覆盖,并且无需执行此候选读取的本地对齐。如果对齐差异小于对齐质量阈值d,我们将在开始和结束模板映射的位置之间将CCA的每个值增加1。对于阈值C,我们使用默认值12 。

纳米孔读数的校正

选择匹配的候选读段后,我们使用FALCON-sense共识算法9来纠正模板读段的每个子序列,这些子序列已被足够的候选读段覆盖。第一步,我们用校正后的子序列替换了这些子序列。然后,我们输出整个模板,包括已校正的子序列和未校正的子序列,作为下一步的已校正读数。下一步已纠正了HERS。在第二步中,我们仅输出校正后的子序列,这意味着一个模板可能会产生多个校正后的读数。如果模板读取中的子序列在第二步中无法纠正,则可能是错误率太高或覆盖率太低。

修剪低质量子序列

即使经过错误校正,长纳米孔读段仍可能包含HERS,这可能会极大地影响组装质量。因此,在组装之前需要修整低质量的子序列。我们仅选择40倍覆盖率最长的校正读数进行修整和将来组装。首先,我们使用MECAT 11的修整模块对选定的纳米孔读数进行成对比对。因为即使经过校正的纳米孔读数也可能具有相对较高的错误率,所以在执行局部比对之前,我们使用了敏感的DALIGN算法来代替MECAT修整模块中的原始diff算法。在成对比对后,我们收集了每次读取均具有90%以上同一性的高质量重叠。如果读数的每个残基均被至少一个重叠覆盖,则将该读数指定为完整读数。另一方面,如果读段中存在没有重叠覆盖的子序列,我们会将其修整为最长的覆盖子序列,称为修整读段。

修剪后,通常对读数进行另一对配对。我们的实验表明,校正后的读数的<10%被修整了,因此,不必成对对齐90%的未修剪读数。因此,我们在修剪后分别存储了完整的读数和修剪后的读数。成对比对仅在完整读数和修剪的读数之间以及修剪的读数之间进行。这些成对比对的结果,连同完整读段,修剪的读段以及完整读段之间的原始成对比对的结果一起被馈送到组装模块中。

从头组装纳米孔读取

尽管长纳米孔读段有助于改善基因组装配,但是这些读段的相对较高的错误率使基因组装配变得困难。在这里,我们开发了一种组装工具,该工具对于纳米孔读取特别有用,因为它可以克服这些读取的高错误率。我们在NECAT中的组装模块包括三个步骤:低质量读取重叠的筛选,contig组装和contig桥接。我们使用了多种质量控制措施来滤除纳米孔读数之间的低质量重叠。然后,我们构造了有向字符串图,并对其进行求解以生成重叠群。最后,我们使用原始读段桥接重叠群,以产生最终的支架。

过滤低质量的读取重叠

低质量的重叠会使装配复杂化,并在装配结果中引入错误。在NECAT中,我们使用多个阈值来控制重叠的标识,突出和覆盖,以滤除低质量的重叠。对于每次读取,我们根据其碱基的重叠确定其覆盖范围。然后,我们计算了碱基的最小覆盖率(min),最大覆盖率(max)以及最小覆盖率和最大覆盖率之间的差(diff)。如果其min小于预定义的阈值,min_coverage或max大于预定义的阈值,max_coverage或diff大于预定义的阈值max_diff_coverage,则删除了读取及其重叠部分。补充说明9中提供了有关覆盖范围阈值设置的详细信息。 。由于不同读段之间的错误分布广泛,因此我们使用全局和局部阈值(而不是单个全局阈值)来进行重叠标识和突出端的质量控制。对于高质量的阅读,其重叠部分的平均质量高于全球平均水平;因此,我们设置局部阈值以滤除质量相对较低的重叠。对于低质量的阅读,其重叠部分的平均质量低于全球平均水平;然后,我们使用全局阈值过滤掉该读取的低质量重叠。这种策略使我们能够为每次读取过滤出质量相对较低的重叠,并保持所有重叠的整体质量。补充说明9中提供了有关设置重叠和重叠的全局和局部阈值的详细信息。 。

重叠群

接下来,我们使用Mayer算法33构造了有向字符串图并删除了传递边。我们根据边缘的重叠长度标记了每个节点的最佳边缘和最佳边缘。未被标记为最佳边缘或最佳边缘的边缘被去除34。我们还删除了图中的歧义边缘(尖端,气泡和虚假链接)。然后,我们从图中识别出线性路径并生成重叠群。当有一个分支时,我们打破了生成多个重叠群的道路,这可以减少错误组装的可能性。

重叠群桥接

在纠错过程中,带有高错误子序列的长阅读被切成多个短阅读,最终导致重叠群的不连续。它可以重新链接重叠群使用LONG RAW读取2335。首先,我们将长原始读段与重叠群对齐。两个重叠群可能具有低质量的重叠;在构建字符串图之前,对重叠进行了过滤。原始读段可以填补两个重叠群之间的缺口,然后将其称为间隙读取,或者与两个重叠群的重叠区重叠,然后将其称为重叠读取。对于每个原始读取,我们记录了两个重叠群末端的映射位置之间的间隔或重叠长度。对于每对重叠群,将它们连接的原始读段分为以相同方向连接或以不同方向连接的那些。在每个方向组中,我们根据原始读段的缺口/重叠长度对其进行聚类。如果两个原始读取的缺口/重叠长度之间的差异小于阈值(默认值为1000 bp),我们将它们分配到同一集群中。然后,我们为每个原始读物分配一个分数,该分数是同一性与原始读物与一对重叠群之间重叠长度的乘积之和。得分总和最大的读取簇被选作重叠群对的链接。

在确定重叠群对之间的链接后,我们创建了一个字符串图,其中重叠群为节点,而重叠群之间的链接为边。将每个边缘的权重设置为链接分数。我们通过删除传递边再次简化了图。然后,我们遍历该图并将线性路径确定为最终重叠群。选择从链接的原始读取来填补重叠群之间的间隙。

误差分布分析

我们分析了大肠杆菌,酿酒酵母,拟南芥,D的纳米孔数据集中的误差分布。melanogaster,C。reinhardtiiO。sativaS.pennellii。我们的结果表明,纳米孔读段的测序错误率很高,为10–20%,这有助于我们完善NECAT平台的算法,并为为什么现有的校正算法不适用于纳米孔读段的校正提供了见解。补充说明5中提供了详细信息 。

评价

我们将错误纠正工具与Canu中提供的工具进行了比较。我们还通过将NECAT中提供的组装工具与Canu,Canu + S和Flye的工具进行了系统地评估。这些比较的细节列于 附记 67,和10

报告摘要

有关研究设计的更多信息,请参见与本文链接的《 自然研究报告摘要》。

资料可用性

我们使用了九个数据集来评估NECAT的性能。在这些数据集,那些酿酒酵母水稻和智人用我们内部的测序产生(在WERI人类视网膜母细胞瘤细胞系),而其他四个是从公共网站获得。在这项研究中所使用的数据的详细报告 补充说明 1 - 4。支持这项研究发现的所有数据均可在https://github.com/xiaochuanle/necathttp://www.tgsbioinformatics.com/necat/找到酿酒酵母的纳米孔全基因组测序数据集,来自这项研究的莱茵衣藻水稻和人类视网膜母细胞瘤细胞系WERI已保存在中国科学院北京基因组研究所BIG数据中心的基因组序列档案中(BIG,http://gsa.big.ac.cn) ,项目编号为“ PRJCA003787 ”,GSA编号为“ CRA003449 ”,“ CRA003450 ”和“ HRA000410”

代码可用性

支持这项研究结果的所有代码都可以在https://github.com/xiaochuanle/necathttp://www.tgsbioinformatics.com/necat/找到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wangchuang2017

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值