Trim length and q20, qza values error

I'm a new user of Qiime2,
I trimed fastq.gz files with trimmomatic before to import them in qiime2, I didn't have a problem for this step but after I tried to visualize qzv, I had this error message :

raise ValueError( ValueError: It looks like you have an Artifact but are missing the plugin(s) necessary to load it. Artifact has type 'SampleData[PairedEndSequencesWithQuality]' and format 'SingleLanePerSamplePairedEndFastqDirFmt'

There was a problem loading 'primer-trimmed-SA_16S_PE.qza' as an artifact:
It looks like you have an Artifact but are missing the plugin(s) necessary to load it. Artifact has type 'SampleData[PairedEndSequencesWithQuality]' and format 'SingleLanePerSamplePairedEndFastqDirFmt'

Could you help me please to resolve this issue ?

Hi @Saif

Welcome to the Qiime2 forum! :qiime2: :raised_hands:

Could you give the forum some more information to help us identify what the issue is?

For example:

What version of Qiime2 are you using?
What command did you used to import your data into Qiime2?
What was the visualization command that is giving you this error?

That way we can see how to troubleshoot the error. At the moment it looks like you just don't have the plugin you are trying to use - but we don't know what that is. But, if you include some extra information we can get more specific and help you resolve the issue :+1:

One thing I would suggest is it might be better to just import your raw data into Qiime2 (no pre-trimming), if you want to trim your data there are several options wrapped in Qiime2 (trimming can be done within using cutadapt, or you can trim and truncate during denoising).

all the best,



Hi @buzic
Thank you for your quick interaction.
I'm using qiime2 2023.9
I used this command to import my data :

qiime tools import \
--type 'SampleData[PairedEndSequencesWithQuality]' \
--input-path /omics/homes/azouz/16S/qiime_import/qiime_trim \
--input-format CasavaOneEightSingleLanePerSampleDirFmt \
--output-path trimqiime_PE.qza

For visualization, I used this command :

qiime demux summarize \
--i-data primer-trimmed-SA_16S_PE.qza \
--o-visualization primer-trimmed-SA_16S_PE.qzv \

Before Importing data to qiime2 , I used this command for trimming :

for infile in *_R1_001.fastq.gz
base=$(basename ${infile} _R1_001.fastq.gz)
trimmomatic-0.39.jar PE ${infile} ${base}_R2_001.fastq.gz \
               ${base}_R1_001.trim.fastq.gz ${base}_R1_001un.trim.fastq.gz \
               ${base}_R2_001.trim.fastq.gz ${base}_R2_001un.trim.fastq.gz \
               SLIDINGWINDOW:4:20 MINLEN:200

In a previous experience, I imported my data without pre trimming but I had problems:

  • When I truncate the q30, I had good filtration but no overlapping,
  • If I choose the q20 and therefore there is an overlapping I do not have dada2 filtration.
    Note that in the 02 experiments I used cutadapt plugin to eliminate the primer sequences.
    I tried to use the quality filter plugin to do a filtration with qscore 20 but it turned out that it only works on single end.

Thank you


1 Like

Hi again @Saif,

Thanks for the extra information that's really helpful :slightly_smiling_face:

Your code looks good and you don't get an error message while importing only while visualizing?

Is this just the last line of the error message? could you please supply the entire error message print out?


Dear @buzic

Effectively, I didn't get an error message while importing only while visualizing.

I would like to mention that using the same data without pre-trimming as mentioned previously, I did not get any error message during visualization.

The goal in fact is to be able to trim with the q20 and then truncate with the q30 and at the same time be able to filter data on dada2 plugin and have an overlapping.

Please find attached the screenshot of the error message.

Thanks again for your help


Hi @Saif,

Check out this great forum post regarding whether to trim inside or outside of QIIME 2 - I would say that unless you have a very specific reason for trimming outside of QIIME 2, I would recommend doing it in QIIME 2 (especially if you are doing more analysis downstream within QIIME 2). Any action you perform within QIIME 2 will be recorded in the resulting artifacts/visualizations, and will thus be easy for future folks to review and replicate if needed (yourself included).

If you're just trimming based on quality scores, that can absolutely be done within QIIME 2 using the q2-dada2 plugin. You can use your demux summary to take a look at the interactive quality plot to make sure you're trimming/truncating at the correct bp location(s).

Hope this helps! Cheers :lizard:


Hi @lizgehret ,

Thanks for your help.

Best regards,

1 Like

Dear @buzic @lizgehret ,

I finally solved the problem by launching trimmomatic on my local machine, it turns out that trimmomatic has a compatibility problem on the cluster although I knew that it was not possible to run it with slurm but by launching it on the cluster terminal, its running is ok but it turns out that it generates corrupt files.

Thank you for your assistance,


1 Like

@Saif Glad you managed to solve it :tada: - apologies but I was at a conference all day yesterday so couldn't get on the forum.


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