最近拿到了nanopore的数据,尝试对其组装。目前用的是Canu,预计2个月内才能走完第一波分析,速度实在感人,所以翻了翻文献,找找组装方法。

目前Nanopore卖点主要是两个角度:第一是Nanopore的读长长,某些情况下能够达到单条上M,但是这种情况可遇而不可求,很多时候只存在于宣传册上。另一个则是Nanpore便宜,这样就能够保证测序深度,从而提高组装质量。

但是Nanopore也有一个劣势,那就是它的错误谱(error profile)和PacBio不一样,并非随机,而是主要集中在homopolymer。因此PacBio在纠错之后的准确率可以高达99%,但是Nanopore达不到该水平。这个问题就导致了Nanopore在组装时候会消耗更多的计算资源。比如说Canu在文档里提到,它将Nanopore纠错后的错误率从原来的0.144下调到0.12,速度提高了5-10倍。

Decrease the default maximum error rate allowed when finding overlaps in corrected Nanopore reads from 14.4% to 12.0%. With the over-occurring kmer changes mentioned previously, run times for finding overlaps in Nanopore reads should decrease by 5 to 10 fold.

PacBio的纠错后错误率默认设置是0.045,那么相对速度可能就是Nanopore的30倍。换句话说,同样的数据量,PacBio装1天,可能Nanopore就要一个月。很多基因组大一点,根本就不敢用Canu。

We also tried to use Canu41 but could not get to the final assembly stage owing to the high computational requirements.

这里总结下我看文献找到的一些组装策略,一般我们可以都尝试下,然后选择结果参数最好的作为最终版本

方案1: 不纠错直接组装。输入数据分为两种情况,一种是用所有的原始数据(包括长度过滤2K/5K以下),一种则是选择最长的30X, 40X作为输入。

  • miniasm: https://github.com/lh3/miniasm
  • WTDBG2: https://github.com/ruanjue/wtdbg2
  • SMARTdenovo: https://github.com/ruanjue/smartdenovo
  • RA: https://github.com/lbcb-sci/ra,个人对这个工具极其失望,运行速度慢,内存管理差,中断之后会删除所有中间文件。
  • Flye: - https://github.com/fenderglass/Flye
    : 不纠错直接组装得到的contig,需要先进行三代自纠错,才能用二代纠错,否则比对率会比较低。

方案2: 纠错后组装,然后挑选所有数据或者最长的30X, 40X作为输入。可供选择的纠错工具如下

  • NextDenovo: https://github.com/Nextomics/NextDenovo
  • Canu: https://github.com/marbl/canu
  • MECAT: https://github.com/xiaochuanle/MECAT
  • NECAT: https://github.com/xiaochuanle/NECAT

: NECAT, Canu可以从头跑到尾,其中NECAT是MECAT的继任者,专门处理Nanopore组装。

由于Canu的参数选择会明显的影响到运行速度,因此在Canu官方FAQ里对不同Nanopore版本参数组装进行了介绍

  • Nanopore R7 1D和低相似度reads: 这种数据目前已经不存在了,所以不在此处讨论。
  • Nanopore R7 2D和 Nanopore R9 1D: 如果数据覆盖度和错误率比较高的话,需要调整参数overlapper=mhap utgReAlign=true. 对于大基因组会降低连续性。
  • Nanopore R9 2D: 调整纠错后的错误率. correctedErrorRate=0.105
  • Nanopore R9.4: 这应该是目前公司的交付结果,原始数据错误已经有很高提升,纠错后的错误率也比较低。如果基因组的覆盖度超过30X,那么设置如下参数corMhapOptions=--threshold 0.8 --ordered-sketch-size 1000 --ordered-kmer-size 14' correctedErrorRate=0.105 可以提高运行速度。
Nanopore不同平台的试剂

由于现在的三代测序价格低了,因此之前那种低深度测序,然后用二代进行raw read纠错的方法,或者混合组装的方法,就不讨论了。

欢迎在评论区补充工具

参考资料

  • https://www.biostars.org/p/331117/
  • https://github.com/marbl/canu/releases
  • https://github.com/rrwick/Filtlong

Nanopore测序的基因组组装策略相关推荐

  1. Nanopore测序在基因组 de novo中的应用

    Nanopore测序在基因组 de novo中的应用 自1977年第一代sanger测序问世来,经过几十年的发展,测序技术得到了极大的发展. 从第一代测序到第二代测序再到第三代测序,测序技术的每一次变 ...

  2. 使用Falcon对三代测序进行基因组组装

    Falcon是PacBio公司开发的用于自家SMRT产出数据的基因组组装工具.Falcon分为三个部分: HGAP:PacBio最先开发的工具,用于组装细菌基因组,名字缩写自Hierarchical ...

  3. 使用Canu对三代测序进行基因组组装

    Canu简介 Canu是Celera的继任者,能用于组装PacBio和Nanopore两家公司得到的测序结果. Canu分为三个步骤,纠错,修整和组装,每一步都差不多是如下几个步骤: 加载read到r ...

  4. iMeta | 青岛华大范广益组基于共标签测序数据的高质量宏基因组组装工具MetaTrass...

    点击蓝字 关注我们 MetaTrass:基于共标签测序数据的人类肠道微生物高质量宏基因组组装工具 https://doi.org/10.1002/imt2.46 RESEARCH ARTICLE ●2 ...

  5. HiFi全基因组测序技术与实例|HiFi基因组组装软件推荐

    HIFI技术的简介 HiFi reads(High fidelity reads) 是Sequel II 三代测序平台推出的兼顾长读长和高准确度的测序序列,一般采用CCS(Circular Conse ...

  6. MPB:微生物所蔡磊组-​​基于二代测序的真菌基因组组装和注释

    为进一步提高<微生物组实验手册>稿件质量,本项目新增大众评审环节.文章在通过同行评审后,采用公众号推送方式分享全文,任何人均可在线提交修改意见.公众号格式显示略有问题,建议电脑端点击文末阅 ...

  7. 基因组组装---Nanopore数据评估(nanoqc和NanoPlot套件工具)

    基因组组装---Nanopore数据评估(拟南芥nanopore) 1. 下载软件 2. 软件使用 (1)nanoQC (2)NanoPlot 1. 下载软件 使用conda创建环境,下载nanoqc ...

  8. 链读测序技术在宏基因组组装研究中的应用

    链读测序技术在宏基因组组装研究中的应用 链读测序(Linked-read sequencing)通过将相同的barcode与长DNA片段(10-100kb)的序列连接在一起,能够消除其中的一些错读,从 ...

  9. “鸟枪换炮”,nanopore测序在宏基因组中的应用

    "鸟枪换炮",nanopore测序在宏基因组中的应用 2003年使用一代测序破译sars病毒用了4个月,2020年初使用二代测序破译新冠病毒用了4天,现在使用使用nanompore ...

最新文章

  1. D3D11中的硬件反锯齿 SSAA/MSAA/EQAA/CSAA(3)
  2. 上映 10 天,票房就突破 10 亿的《海王》真的有那么好看?
  3. sql server where 条件 区分大小写查询
  4. Android Studio 启动模拟器出现“Timed out after 300seconds waiting for emulator to come online“解决方案
  5. CCF C³:创业公司如何面对开源?知乎CTO李大海:谢邀
  6. 计算机视觉及机器学习论文、源代码合集
  7. 软件项目管理-构建之法-四周总结
  8. ios自带连点器一秒10000下_这6个iOS隐藏技巧让你的iPhone更高效 超级实用
  9. VMware配置上限(Configuration Maximums)
  10. 企业级容器镜像仓库Harbor的搭建
  11. java生成8位邀请码,邀请码生成器Java代码
  12. 设计模式【转自JackFrost的博客】
  13. 谷歌浏览器的一个新特点—关于获取iframe的parent对象
  14. 数据抓取的艺术(三)
  15. html5下移标签,不可不知的html5标签
  16. 设置kafka_2.13-3.0.0开机自启动
  17. 添加内核驱动模块(4)(mydriver.c+ Konfig+Makefile )
  18. 学习突围3 - 关于精力
  19. redis桌面管理工具 redis-desktop-manager使用指南
  20. 微软拼音输入法卸载相关

热门文章

  1. harris位_Harris角点检测算法 1
  2. Git初学者:msysgit和tortoisegit
  3. 多人过河问题C语言贪心算法,贪心算法----过河问题
  4. 测试用例编写方法总结
  5. 深入折腾 Weex,知乎日报客户端开发
  6. C++ 第十节 ——哈希 unordered_map/unordered_set的封装 位图 布隆过滤器 海量数据处理
  7. 飞书开放平台-发送个人群名片消息示例
  8. c语言编程float,C语言double和float 实例分析
  9. win10命令行进入文件夹的方法
  10. influxdb 笔记: Continuous Queries - CQs