Error correction and assembly complexity of single molecule sequencing reads

Hayan Lee*, James Gurtowski*, Shinjae Yoo, Shoshana Marcus, W. Richard McCombie, and Michael Schatz

Third generation single molecule sequencing technology is poised to revolutionize genomics by enabling the sequencing of long, individual molecules of DNA and RNA. These technologies now routinely produce reads exceeding 5,000 basepairs, and can achieve reads as long as 50,000 basepairs. Here we evaluate the limits of single molecule sequencing by assessing the impact of long read sequencing in the assembly of the human genome and 25 other important genomes across the tree of life. From this, we develop a new data-driven model using support vector regression that can accurately predict assembly performance. We also present a novel hybrid error correction algorithm for long PacBio sequencing reads that uses pre-assembled Illumina sequences for the error correction. We apply it several prokaryotic and eukaryotic genomes, and show it can achieve near-perfect assemblies of small genomes (<100Mbp) and substantially improved assemblies of larger ones. All source code and the assembly model are available open-source.

 Paper Preprint
 Supplementary Tables and Figures
 ECTools: Hybrid Error Correction Pipeline for long reads
 Genome Assembly Performance Prediction
 All Assembly Results and Parameters


E. coli

 PacBio raw reads: SRX255228 [SRA]
 Illumina raw reads: Illumina BaseSpace
 Illumina-only assembly: ecoli_illumina.fa.gz
 ECTools error corrected reads: ECTools_SRR801650.corrected.fa.gz
 ECTools assembly: ecoli_ectools.fa.gz
 HGAP error corrected reads: HGAP_allpb.corrected.fa.gz
 HGAP assembly: ecoli_hgap.fa.gz
 PacBioToCA error corrected reads: pacbioToCA_SRR801650.corrected.fa.gz
 PacBioToCA assembly: ecoli_pbca.fa.gz
 Assembly Results and Parameters: ecoli.tgz




S. cerevisiae W303

 PacBio raw reads: Pacbio.fasta.gz
 Illumina raw reads (R1): Illumina_500bp_2x300_R1.fastq.gz
 Illumina raw reads (R2): Illumina_500bp_2x300_R2.fastq.gz
 Illumina-only assembly: w303_illumina.fa.gz
 ECTools error corrected reads: ECtools_corrected_onecell.fa.gz
 ECTools assembly: w303_ectools.fa.gz
 HGAP error corrected reads: HGAP_corrected.fa.gz
 HGAP assembly: w303_hgap.fa.gz
 PacBioToCA error corrected reads: PacbioToCA_corrected.fa.gz
 PacBioToCA assembly: w303_pbca.fa.gz
 Assembly Results and Parameters: w303.tgz




A. thaliana Ler-0

 PacBio raw reads: Pacbio.fasta.gz
 Illumina raw reads (R1): Illumina_2x300_R1.fastq.gz
 Illumina raw reads (R2): Illumina_2x300_R2.fastq.gz
 Illumina-only assembly: athal_illumina.fa.gz
 ECTools error corrected reads: ECtools_corrected.fa.gz
 ECTools assembly: athal_ectools.fa.gz
 HGAP error corrected reads: HGAP_corrected.fa.gz
 HGAP assembly: athal_hgap.fa.gz
 PacBioToCA error corrected reads: PacbioToCA_corrected.fa.gz
 PacBioToCA assembly: athal_pbca.fa.gz
 Assembly Results and Parameters: arabidopsis.tgz




O. sativa Nipponbare

 PacBio raw reads: nipponbare.raw.fasta.gz
 PacBioToCA error corrected reads: PacbioToCA_corrected.fa.gz
 ECTools error corrected reads: nipponbare.ectools.fa.gz
 Assembly Results and Parameters: nipponbare.tgz




O. sativa IR64

 PacBio raw reads: Pacbio.fasta.gz
 Illumina raw reads (L1 R1): Illumina_A6NRC_290485_300bp_R1.fastq.gz
 Illumina raw reads (L1 R2): Illumina_A6NRC_290485_300bp_R2.fastq.gz
 Illumina raw reads (L2 R1): Illumina_A6UA9_290485_300bp_R1.fastq.gz
 Illumina raw reads (L2 R2): Illumina_A6UA9_290485_300bp_R2.fastq.gz
 Illumina raw reads (L2 R2): Illumina_A6UA9_290485_300bp_R2.fastq.gz
 Illumina-only assembly: ir64_illumina.fa.gz
 ECTools error corrected reads: ECtools_corrected.fa.gz
 ECTools assembly: ir64_ectools.fa.gz
 PacBioToCA error corrected reads: PacbioToCA_corrected.fa.gz
 PacBioToCA assembly: ir64_pbca.fa.gz
 Assembly Results and Parameters: ir64.tgz