running dada2,error:Error in isBimeraDenovoTable(unqs[[i]], ..., verbose = verbose) : Input must be a valid sequence table.

Hello, qiime team, I encounter a problem when I am running dada2 with the manifest format input PE-reads, I checked the similar problem in this forum before I post this, but the answer in similar problem can not address my running problem, so I upload qiime command line, dada2 error log, and other input files in my command line. This maybe caused by pe-reads file, but I can not figure it out , so I hope this topic would be helpful.

command line I used:
qiime tools import --type 'SampleData[PairedEndSequencesWithQuality]' --input-path input.txt --output-path imported_sequences.qza --input-format PairedEndFastqManifestPhred33V2
qiime dada2 denoise-paired --i-demultiplexed-seqs import_seq_out_imported_sequences.qza --p-trunc-len-f 50 --p-trunc-len-r 50 --output-dir temp_out

Running external command line application(s). This may print messages to stdout and/or stderr.
The command(s) being run are below. These commands cannot be manually re-run as they will depend on temporary files that no longer exist.

Command: run_dada_paired.R /tmp/tmp818rpgg4/forward /tmp/tmp818rpgg4/reverse /tmp/tmp818rpgg4/output.tsv.biom /tmp/tmp818rpgg4/track.tsv /tmp/tmp818rpgg4/filt_f /tmp/tmp818rpgg4/filt_r 50 50 0 0 2.0 2 consensus 1.0 1 1000000

R version 3.5.1 (2018-07-02)
Loading required package: Rcpp
DADA2: 1.10.0 / Rcpp: 1.0.1 / RcppParallel: 4.4.2

  1. Filtering .
  2. Learning Error Rates
    1808100 total bases in 36162 reads from 1 samples will be used for learning the error rates.
    1808100 total bases in 36162 reads from 1 samples will be used for learning the error rates.
  3. Denoise remaining samples .
  4. Remove chimeras (method = consensus)
    Error in isBimeraDenovoTable(unqs[[i]], ..., verbose = verbose) :
    Input must be a valid sequence table.
    Calls: removeBimeraDenovo -> isBimeraDenovoTable
    Execution halted

Clean_Ac1_S76_L001_R1_001.fastq.gz (3.2 MB) Clean_Ac1_S76_L001_R2_001.fastq.gz (3.5 MB) input.txt (136 Bytes)
qiime2-q2cli-err-xu6m66ww.txt (3.3 KB)

Hi @bluecard,
Welcome to the forum!
Thanks for providing your input commands. There are a couple of issues here that I’ll point out and offer a solution to.
1st, it seems as though you only have one sample, which on its own is technically not a problem but it is possible that this one sample does not contain enough reads for DADA2 to create an appropriate error model. About 100,000 reads (which is the min default) is recommended for this step. That is not to say the process will not finish, it is that we don’t know whether the error model fits the data well enough. If this sample is a subset of other samples from the same run I would recommend including more samples/reads and re-run or you can also use Deblur which has a static error model and does not depend on building its own.
The second issue, which is actually causing the error you are seeing is the fact that you are truncating your reads at the 50bp spot, and in most cases this means that your paired-end reads do not overlap for merging and thus they are discarded. Essentially you are left with an empty feature-table which then cannot be processed any further.
Have a look through the forum again with regards to how truncating parameters are picked so that there is sufficient overlap for merging.
Keep us posted and good luck!

1 Like

Thank you for your helpful method! I think I mistaken the truncation for trim setting, so this could cause the PE reads fail to merge. I will browse this forum more.