Quality filter paired end fastq's

I’m trying to quality filter and trim paired end Illumina reads.

When using the command:

qiime quality-filter q-score --i-demux S1_R1.fastq --o-filtered-sequences output/S1_R1 --o-filter-stats qoutput/S1_R1

I get this output:

ValueError: S1_R1_001.fastq is not a QIIME archive.

Am I doing this right? And can I process the forward and reverse reads at the same time?

Hi @Remon! You're supplying a FASTQ file as input and QIIME 2 is expecting an artifact (i.e. .qza file). You'll need to import your FASTQ data into an artifact (we have an importing tutorial with examples). If you haven't already, I highly recommend reviewing the Getting Started guide, which provides an introduction to QIIME 2 and links out to some tutorials for you to work through.

quality-filter q-score doesn't support processing both read directions at the same time. If you have paired-end data, we recommend joining those reads using an external program or QIIME 1's join_paired_ends.py script. You can then import the joined reads into a SampleData[SequencesWithQuality] artifact and process that with quality-filter q-score.

Note that if you're planning to use DADA2 to denoise your sequences, you'll want to avoid joining them, and using q2-quality-filter is also unnecessary. You can just let DADA2 do the joining and quality filtering for you on your paired-end data. If you're planning to use Deblur to denoise your sequences, then the strategy of joining-->import-->quality-filter-->deblur should work just fine.

We have plans to support explicit read-joining via q2-vsearch by the end of 2017, so this process may get easier in the future. We'll follow up here when that support is available in a release!

1 Like

Thank you for your response, it worked!
Does the quality-filter step also remove adapters/barcodes from the sequences?
Or do I need another plugin for that?

Hey @Remon,

It does not, but typically you can use use the trim-left parameters in qiime dada2 denoise-paired to remove those pieces (since their length is known).

We've also got some plans to improve trimming/removal of non-biological sequence, so there will probably be a plugin in the near future to more directly address this.

The QIIME 2 2017.11 release has expanded support for analyzing paired end reads! See the paired end reads community tutorial for more details. :tada:

We'll follow up here again when we have more direct support for trimming!

QIIME 2 2017.12 is now out, and it includes a cutadapt plugin! Keep your eye on the release announcement for a community tutorial on how to use the methods in this plugin!

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