DADA2 error running without chimera checking

I have been trying to run DADA2 without chimera checking but I get an error everytime. I'm using QIIME2-2017-12 on an HPC cluster and using the following code:

> qiime dada2 denoise-paired \
>    --i-demultiplexed-seqs Demux/demuxPE-AT.qza \
>    --o-table Dada2/tablePE-AT \
>    --o-representative-sequences Dada2/rep-seqsPE-AT \
>    --p-trim-left-f 13 \
>    --p-trim-left-r 13 \
>    --p-trunc-len-f 150 \
>    --p-trunc-len-r 150 \
>    --p-n-threads 0 \
>    --p-chimera-method none \
>    --verbose

The error file contains the following:

> Loading required package: Rcpp
> The sequences being tabled vary in length.
> Error in is.data.frame(x) : object 'seqtab.nochim' not found
> Calls: rowSums -> is.data.frame
> Execution halted
> Traceback (most recent call last):
>   File "/software/software/QIIME2/2017.12/lib/python3.5/site-packages/q2_dada2/_denoise.py", line 179, in denoise_paired
>     run_commands([cmd])
>   File "/software/software/QIIME2/2017.12/lib/python3.5/site-packages/q2_dada2/_denoise.py", line 35, in run_commands
>     subprocess.run(cmd, check=True)
>   File "/software/software/QIIME2/2017.12/lib/python3.5/subprocess.py", line 398, in run
>     output=stdout, stderr=stderr)
> subprocess.CalledProcessError: Command '['run_dada_paired.R', '/local/501194/tmph7hrhop3/forward', '/local/501194/tmph7hrhop3/reverse', '/local/501194/tmph7hrhop3/output.tsv.biom', '/local/501194/tmph7hrhop3/filt_f', '/local/501194/tmph7hrhop3/filt_r', '150', '150', '13', '13', '2.0', '2', 'none', '1.0', '0', '1000000']' returned non-zero exit status 1
> 
> During handling of the above exception, another exception occurred:
> 
> Traceback (most recent call last):
>   File "/software/software/QIIME2/2017.12/lib/python3.5/site-packages/q2cli/commands.py", line 224, in __call__
>     results = action(**arguments)
>   File "<decorator-gen-354>", line 2, in denoise_paired
>   File "/software/software/QIIME2/2017.12/lib/python3.5/site-packages/qiime2/sdk/action.py", line 228, in bound_callable
>     output_types, provenance)
>   File "/software/software/QIIME2/2017.12/lib/python3.5/site-packages/qiime2/sdk/action.py", line 363, in _callable_executor_
>     output_views = self._callable(**view_args)
>   File "/software/software/QIIME2/2017.12/lib/python3.5/site-packages/q2_dada2/_denoise.py", line 194, in denoise_paired
>     " and stderr to learn more." % e.returncode)
> Exception: An error was encountered while running DADA2 in R (return code 1), please inspect stdout and stderr to learn more.
> 
> Plugin error from dada2:
> 
>   An error was encountered while running DADA2 in R (return code 1), please inspect stdout and stderr to learn more.
> 
> See above for debug info.

The problem seems to be at the chimera checking stage, from the output file:

  1. Denoise remaining samples ............................................................
  2. Remove chimeras (method = none)
    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 /local/501194/tmph7hrhop3/forward /local/501194/tmph7hrhop3/reverse /local/501194/tmph7hrhop3/output.tsv.biom /local/501194/tmph7hrhop3/filt_f /local/501194/tmph7hrhop3/filt_r 150 150 13 13 2.0 2 none 1.0 0 1000000

When I run the same command, but without the "--p-chimera-method none", it all works fine and I get table and rep-seqs files.

Any help on this would be much appreciated,

Stefanie

Oops! This is a bug on our end. seqtab.nochim is not getting assigned when chimera checking is turned off, but the R code assumes that it is.

Added an issue tracking this on the plugin github: https://github.com/qiime2/q2-dada2/issues/88

For now this workaround should get the same result: --p-min-fold-parent-over-abundance 99999999

That will exclude all potential “parents” during chimera-checking, hence no chimeras will be flagged. Although double-check that in the --verbose output (the number of reads should remain the same after chimera checking).

2 Likes

Thanks, nice to know there’s a workaround - I’ll give it a try.

1 Like

QIIME 2 2018.2 is out now, and it includes a bug fix for this issue. Thanks for reporting it, and thanks @benjjneb for the speedy repair!

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.