Pair-end reads become Single end after q2- quality plugin

Dear All,
I got my metagenomics raw reads and have done quality trimming outside the qiime using cutadapt. After the quality filtering and adapter removing, the no of reads are not same for the forward and reverse pair-end . Hence I got the mismatch error in dada2 step.

Hence I imported the raw reads to qiime environment and removed adaptor using q2-cutadapt. and using qiime quality filtering I removed bases with the score less than 20. But when I open the results from quality filtering, I got only single-end plots not for reverse reads? why it is like that? Am I missing something else?
The commands I have followed:

qiime tools import --type 'SampleData[PairedEndSequencesWithQuality]' --input-path pe-44 --output-path paired-end-demux.qza --input-format PairedEndFastqManifestPhred33

qiime cutadapt trim-paired --i-demultiplexed-sequences paired-end-demux.qza --p-cores 16 --p-adapter-f AGATCGGAAGAGCGT --p-adapter-r AGATCGGAAGAGCGT --o-trimmed-sequences paired-end-demux_trimmed.qza --verbose

qiime quality-filter q-score --i-demux paired-end-demux_trimmed.qza --p-min-quality 20 --o-filtered-sequences paired-end-demux_filltered.qza --o-filter-stats filtered_stats.qza

Before quality filtering
demux.qzv (298.0 KB)
After quality filtering
paired-end-demux_filltered.qzv (294.7 KB)

How Do I proceed with this?

Hi @steffi,

You imported the data and trimmed it, but you didn’t pair the reads. Try using qiime vsearch join-paireds to explicitly pair the reads.

There’s actually a pretty good tutorial for exactly this problem.


1 Like

For a clarification, is pairing similar to merging? that means Am I converted the pair-end data into single-end?

Hi @steffi,

Yes, it’s similar to merging. I dont know the semantic types off the top of my head, so the tutorial would be good to check out for exactly how this works.


Really sorry. I am not getting it yet. My query is how to get the pair-end data after trimming step. As mentioned in the post, I got only for forward read

There is not a q-score method for paired-end data. It accepts paired-end data for convenience, but only operates on the forward read.

Why? Because there are not methods to use paired-end filtered reads downstream. This is because QIIME 2 currently only has three different options for denoising/clustering:

  1. dada2 performs its own q-score filtering. Different from everything that q-score does, but still it makes q-score redundant.
  2. deblur cannot operate on paired-end reads. These must be joined first, following the tutorial that @jwdebelius shared.
  3. OTU clustering and dereplication methods cannot operate on paired-end reads. These must be joined first, following the tutorial that @jwdebelius shared.

So we have not had any reason to implement a q-score-paired method.

I hope that helps!


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