介绍
Canu专门组装PacBio或Oxford Nanopore序列。Canu分为三个阶段:校正、修整和装配。校正阶段将提高读取中基数的准确性。微调阶段将微调显示为高质量序列的部分的读取,删除可疑区域,如剩余的SMRTbell适配器。组装阶段将把读取排序为重叠,生成一致序列,并创建备用路径图。 输入序列可以是FASTA或FASTQ格式,未压缩或用gzip(.gz)、bzip2(.bz2)或xz(.xz)压缩。请注意,不支持zip文件(.zip)。
官方测试数据下载
下面包括了pacbio、Nanopore以及Pacbio HIFI的测试数据集
1 2 3 4 5 6 7 8 9 10 11 12 13
#Pacific Biosciences released P6-C4 chemistry reads for Escherichia coli K12. curl -L -o pacbio.fastq http://gembox.cbcb.umd.edu/mhap/raw/ecoli_p6_25x.filtered.fastq #Oxford Nanopore样本数据(Escherichia coli K12) curl -L -o oxford.fasta http://nanopore.s3.climb.ac.uk/MAP006-PCR-1_2D_pass.fasta #PacBio测序的大肠杆菌K12 HiFi数据集 curl -L -o ecoli.fastq https://sra-pub-src-1.s3.amazonaws.com/SRR10971019/m54316_180808_005743.fastq.1 canu \ -p asm -d ecoli_hifi \ genomeSize=4.8m \ -pacbio-hifi ecoli.fastq
软件安装
1 2 3 4 5 6 7 8
conda install -c conda-forge -c bioconda -c defaults canu brew install brewsci/bio/canu git clone https://github.com/marbl/canu.git cd canu/srcmake -j <number of threads>
用法
1 2 3 4 5 6 7 8
canu [-haplotype|-correct|-trim] \ [-s <assembly-specifications-file>] \ -p <assembly-prefix> \ -d <assembly-directory> \ genomeSize=<number>[g|m|k] \ [other-options] \ [-trimmed|-untrimmed|-raw|-corrected] \ [-pacbio|-nanopore|-pacbio-hifi] *fastq
-p选项用于设置中间文件和输出文件的文件名前缀 -s选项将从提供的规范(“ spec”)文件中导入参数列表。 -pacbio和-nanopore假定为原始和未修剪,而-pacbio hifi假定为校正和修剪 使用-pacbio-corrected或-nanopore-corrected 提供预校正的读操作将只运行修剪和组装阶段。 指定reads作为 -corrected -untrimmed将只运行组装步骤。
rawErrorRate <float=unset> 两次未修正的读取之间重叠的允许差值,用分数误差表示;通常不需要修改(PacBio read的默认值为0.300,Nanopore read的默认值为0.500) correctedErrorRate <float=unset> 两次修正后的读数之间重叠的允许差值,用分数误差表示(PacBio read的默认值为0.045,Nanopore read的默认值为0.144);对于低覆盖率数据集((less than 30X),建议将校正错误率稍微增加1%左右。对于高覆盖率数据集(more than 60X),我们建议将校正错误率稍微降低1%左右。
Canu官方文档
组装PacBio CLR或Nanopore数据
1 2 3 4
canu \ -p ecoli -d ecoli-pacbio \ genomeSize=4.8m \ -pacbio pacbio.fastq
1 2 3 4
canu \ -p ecoli -d ecoli-oxford \ genomeSize=4.8m \ -nanopore oxford.fasta
用HiCanu组装PacBio HiFi
HiCanu通过压缩均聚物、纠正孤立错误和掩盖系统错误来支持PacBio HiFi数据。现在将组装大肠杆菌K12 HiFi数据集 ,并通过PacBio测序,可在NCBI SRA(3 GB) 获得。组装时,使用-pacbio hifi指定输入读数:
1 2 3 4 5 6 7 8
canu -p asm -d <outDir> genomeSize=<GSize> useGrid=false maxThreads=<nThreads> \ -pacbio-hifi <HiFi-reads.fasta> canu -haplotype -p asm -d <outDir> genomeSize=<GSize> useGrid=false \ maxThreads=<nThreads> -haplotypePat <pat-reads.fq> -haplotypeMat <mat-reads.fq> \ -pacbio-raw <HiFi-reads.fasta>
1 2 3 4 5 6
curl - L - o ecoli.fastq https:/ / sra- pub- src-1. s3.amazonaws.com/ SRR10971019/ m54316_180808_005743.fastq.1 canu \ - p asm - d ecoli_hifi \ genomeSize= 4.8 m \ - pacbio- hifi ecoli.fastq
使用多种技术和多个文件进行组装
Canu可以读取任意数量的输入文件,这些文件可以是多种格式和技术的混合体。请注意,当前不支持将PacBio HiFi数据与其他数据类型相结合。官网文档将在两个FASTQ文件中组合10X PacBio CLR读取,在一个FASTA文件中组合10X Nanopore读取:
1 2 3 4 5 6 7 8
curl -L -o mix.tar.gz http://gembox.cbcb.umd.edu/mhap/raw/ecoliP6Oxford.tar.gz tar xvzf mix.tar.gz canu \ -p ecoli -d ecoli-mix \ genomeSize=4.8m \ -pacbio pacbio.part?.fastq.gz \ -nanopore oxford.fasta.gz
手动校正,修剪和组装
矫正原始数据 修剪校正的输出 用不同的严格度将修剪的输出组装两次,重叠使用(参考此处 )
1 2 3 4 5 6 7 8 9 10 11
canu \ -p ecoli -d ecoli-erate-0.039 \ genomeSize=4.8m \ correctedErrorRate=0.039 \ -trimmed -corrected -pacbio ecoli/ecoli.trimmedReads.fasta.gz canu \ -p ecoli -d ecoli-erate-0.075 \ genomeSize=4.8m \ correctedErrorRate=0.075 \ -trimmed -corrected -pacbio ecoli/ecoli.trimmedReads.fasta.gz
Consensus Accuracy
使用PacBio-HiFi数据的HiCanu一致序列通常远高于99.99%,官方文档 说到不鼓励对这些组件进行任何后期处理/抛光,因为重复中的mis-mapping可能会导致错误。
对于PacBio数据集,Canu一致序列通常远高于99%的一致性。纳米孔的准确度因孔和基孔的不同而不同,但对于最新的数据,准确度通常在99%以上。精确性可以通过使用专门为该任务开发的工具来提高。 Canu推荐Arrow用于PacBio,Nanopolish或Medaka用于Oxford Nanpore数据。当Illumina reads可用时,FreeBayes可用于polish either PacBio or Oxford Nanopore assemblies.
参考
Nurk S, Walenz B P, Rhie A, et al. HiCanu: accurate assembly of segmental duplications, satellites, and allelic variants from high-fidelity long reads[J]. Genome research, 2020, 30(9): 1291-1305.