美文网首页基因组
生物信息百Jia软件(28):canu

生物信息百Jia软件(28):canu

作者: 基因学苑 | 来源:发表于2019-08-11 22:40 被阅读0次

    欢迎订阅WX众号:基因学苑,更多精彩内容等你发掘!

    基因学苑Q群:32798724

    上一次介绍了三代拼接工具falcon,但是falcon这款无论是从安装还是使用都比较麻烦,对于新手是一个很大的考验,这里次我们介绍一款更好用的三代拼接工具canu。canu这款软件来自于经典的 Celera Assembler。celera最早用于人类全基因组计划,后来随着二代测序数据的普及,这种基于overlap的方法逐渐被基于kmer的方法取代,但是虽则三代测序的流行,这些工具又焕发了新的生命。如果没听过Celera的大名,刚快bing一下“Celera Genomics”。

    应用场景

    1、手里有三代pacbio测序的数据,fastq格式或者fasta格式,需要连接成更长的基因组序列。

    2、有nanopore测序数据,需要拼接成更长的基因组。

    软件官网

    https://github.com/marbl/canu

    官方文档页

    https://canu.readthedocs.io/en/latest/tutorial.html

    下载安装

    cano的安装特别容易,从github上下载软件源代码,直接make编译就能够使用。

    gitclonehttps://github.com/marbl/canu.git

    cdcanu/src

    make -j 32

    软件使用

    传统的celera软件最开始利用于一代的sanger测序以及后面的454测序数据,这些数据的特点是准确性较高,所以,直接采用基于overlap的方法就可以拼接。但是当前的pacbio后者nanopore数据,具有较高的错误率,因此,canu软件需要进行一个很重要的数据校正的过程。

    这是canu软件的原理的一个示意图:

    第一步:数据纠错(correct)

    由于三代测序的测序错误是随机产生的,因此,可以通过多次测序进行数据纠错,纠错的原理并不难,将所有测序数据堆叠在一起,根据少数服从多数的原则,将测序错误位点进行纠正。这种原理其实与二代测序的“pileup”类似。

    read1:   ATGACGTGATCGTAGCTGATCGTCGTTGGGAA

    read2:CGTGATCGTAGCTGATCGTCGTGGGAAACAG

    read3:           ATCGTAGCTGATCGTCG TGGGAAACAGATGA

    read4:               TAGCTGATCGTCG TGGGAAACAGATGAATG

    ^

    |

    差别位点

    校正后的结果

    read1:   ATGACGTGATCGTAGCTGATCGTCGTGGGAA

    read2:CGTGATCGTAGCTGATCGTCGTGGGAAACAG

    read3:           ATCGTAGCTGATCGTCGTGGGAAACAGATGA

    read4:               TAGCTGATCGTCGTGGGAAACAGATGAATG

    第二步:修剪(trim)

    trim的作用是得到read之间高质量的overlap区域,便于后面通过overlap进行连接。

    read1:   ATGACGTGATCGTAGCTGATCGTCGTGGGAA

    read2:       CGTGATCGTAGCTGATCGTCGTGGGAAACAG

    read3:           ATCGTAGCTGATCGTCGTGGGAAACAGATGA

    read4:               TAGCTGATCGTCGTGGGAAACAGATGAATG

    |_________|

    低质量区

    将低质量区域的碱基trim掉

    read1:   GTAGCTGATCGTCGTGGGAA

    read2:   GTAGCTGATCGTCGTGGGAAACAG

    read3:   GTAGCTGATCGTCGTGGGAAACAGATGA

    read4:    TAGCTGATCGTCGTGGGAAACAGATGAATG

    第三步:组装(assemble)

    经过数据就锁和trim之后,这些高质量的reads,就可以直接通过reads之间的overlap区域,连接成更长的序列了,完成了序列拼接。

    ---------------

    ----------------

    --------------

    |          |           |

    v          v           v

    -----------------------------------

    选项参数

    canu的选项参数并不难理解,不像falcon在配置文件中设置。

    -s 接一个配置文件

    -p 指定输出前缀

    -d 指定输出结果目录

    -options 显示全部选项参数

    genomeSize 设置一个预估的基因组大小,便于让Canu估计测序深度,单位是K,M,G

    maxThreads 设置最大线程数

    rawErrorRate 设置两个未纠错read之间最大期望差异碱基数

    correctedErrorRate 设置纠错后read之间最大期望差异碱基数

    minReadLength 设置最小使用的reads长度

    minOverlapLength 设置Overlap的最小长度

    另外非常重要一点就是,需要指定输入数据的类型,是原始测序的数据,还是经过处理的。

    -pacbio-raw        直接测序得到的原始pacbio数据

    -pacbio-corrected   经过纠正的pacbio数据

    -nanopore-raw       原始的nanopore数据

    -nanopore-corrected 结果纠正的nanopore数据

    使用案例

    直接下载软件官方的练习数据即可进行测试。这是一个大肠杆菌的基因组测序数据。

    下载数据

    curl-L -o pacbio.fastq http://gembox.cbcb.umd.edu/mhap/raw/ecoli_p6_25x.filtered.fastq

    curl -L -o oxford.fasta http://nanopore.s3.climb.ac.uk/MAP006-PCR-1_2D_pass.fasta

    pacbio数据拼接

    canu-p ecoli -d ecoli-pacbio  genomeSize=4.8m-pacbio-raw pacbio.fastq

    nanopore数据拼接

    canu-p ecoli -d ecoli-oxford  genomeSize=4.8m-nanopore-raw oxford.fasta

    更多详细内容可以查看官方文档。

    ---------- END ----------

    相关文章

      网友评论

        本文标题:生物信息百Jia软件(28):canu

        本文链接:https://www.haomeiwen.com/subject/nxsejctx.html