Hello! My name is Lucia and I'm currently working with already joined reads (qiime2019.1) that I've imported as `'SampleData[JoinedSequencesWithQuality]' . I've checked it and the data still have the primer sequences that should be removed. I've tried to use cutadapt using both trim-possible versions (single and paired), but in both cases I obtain the same error regarding the type of argument:
Parameter 'demultiplexed_sequences' received an argument of type SampleData[JoinedSequencesWithQuality]. An argument of subtype SampleData[SequencesWithQuality] is required.
Is there any option for trimming joined sequences with cutadapt? If not, should I import the sequences as SequencesWithQuality? How does the importation as JoinedSequencesWithQuality or SequencesWithQuality could affect the data? (sorry if this questions does not belong to this chat).
Did you join the sequences or did you get them already joined?
I am asking because having the not-joined sequences would give you more flexibility (but if you are here probably you haven't got them ...)
In your place I probably would trim the sequences before importing them into qiime, so you can keep as "JoinedSequencesWithQuality", hence if you look at the data days/weeks/years later you are not confused by this. You can do this using cutadapt within the qiime2 environment if you like (using something like -g and -G options in cutadapt to remove adapters respectively at front of R1 and R2, but please refer to cutadapt documents for more info on this User guide — Cutadapt 5.0 documentation )
As alternative you could, as you said, import your sequences as "SequencesWithQuality" instead, and trim with q2-cutadapt using --p-front and --p-anywhere for trimming the forward and reverse primer respectively. I never tried that and in theory I think it should work. That ultimately should work because for the denoising stage you have to use deblur (dada2 does not work for joined sequence, so in any case you could not use it!) and it does not consider the quality values (from the documentation, deblur works with JoinedSequencesWithQuality as well as SequencesWithQuality).
Still, my preferred options would be to (a) get the un-joined reads, or (b) trim the sequences outside qiime, for keeping things as clear as possible for late ruse. The third way,(c) trimming sequences as SequencesWithQuality would be quite experimental in my view, and it is possible I missing a piece on this ... let see what other think about!