Removing ASV's Found in Extraction Blanks


I am currently using QIIME2 version 2022.2, running on terminal with conda, to analyze microbiome data for my research.

In addition to the few samples I got sequenced, I included extraction blanks. I noticed that the DNA extraction controls weren't as clean as we would ideally want them to be, possibly due to the manipulation methods performed when prepping the samples for sequencing. Nevertheless, to make sure that I don't work with any contaminants in my downstream QIIME2 analysis, what commands can I use to remove all ASVs present in the DNA extraction controls from the other samples? I know there is the option to filter features on the docs, but I'm not quite sure how I would proceed for a case like this.

Any assistance here would be highly appreciated!

Hi @Hasti_A,

Welcome to the :qiime2: forums!

Congratulations, you have stumbled into one of thsoe horrifying secrets of microbiome reserach that no one talks about (or everyone talks about).

I'd recommend reading the thread on decontamination:

You might also look at a slightly different perscective about well-to-well contamination if you ever used robotic processing in your samples



Hi Justine,

Thank you for your help and recommended readings!

Reading the thread didn't seem to help with what I'm trying to do... I wish to remove all the features present in the extraction blanks from the samples. For instance, if my extraction blank contains a particular Firmicutes feature/sequences, I want to filter this same feature out of my stool samples. How could I proceed with doing this using Qiime's filtering options?

Thank you, in advance!

Hi @Hasti_A,

While q2-feature-table has all kinds of mechanisms for filtering features, including using one feature table as metadata for another, this is a really bad choice. (See this excellent evaluation by Karstens et al for more.) For higher biomass samples, I think the well-to-well paper is key: the direct removal of the features ignores splash over. If you've got fecal samples and water extraction blanks and used a robot at any point in your processing, there's a high probabillity of splash over. Unless you have really good evidence those specific organisms are contaminants (for example, running a pipeline that identifies contamination), filtering without further consideration will remove biologically relevant taxa and may affect your ability to make inferences.

There could be whole discussions about extraction blanks as appropriate controls, but direct filtering is not a good way to handle it, at least not according to the literature.