Error when applying qiime gneiss ols-regression on a covariate with 14 categories


I am using gneiss tutorial on different datasets, which work well when selecting covariates of two categories, but when select a variable such as genotype (includes 14 categories/different genotypes) as below
qiime gneiss ols-regression --p-formula “Genotype” --i-table balances.qza --i-tree hierarchy.qza --m-metadata-file meta.mapping --o-visualization regression_summary.qzv

I got this error
Plugin error from gneiss:

Detected zero variance balances - double check your table for unobserved features.

Debug info has been saved to /tmp/qiime2-q2cli-err-g4mo_y5v.log

I don’t know how can I figure it out?


You can perform contingency filtering of your feature table to remove features that counted only in 2 or less (5 or less better, but you can loose some features) and after it Gneiss should work fine

Yes, you are right. it works now.
I have one more question about reading the proportion plot, what is the main message from the uploaded graphs? proportion-plot balance-taxonomy .
Also, is it acceptable to visualize more than one balance, or the focus usually on the y0; the most important and significant one?
Thanks in advance

@Eman, the proportion plots are supposed to help you break down the most contributing taxa in a selected balance. In this case, it is possible there isn’t much signal in y0, so other balances may need to be investigated (check out the regression summaries for more details. You should be able to specify other balances in the command line interface. Let me know if you have any other questions.

Thanks Jamie for your swift reply. I visualized two more balances and found Burkholderiaceae somehow different between both groups.barplot-y2 barplot-y6 proportion-plot-y2 proportion-plot-y6

is not it? Also, I am trying ancom plugin, should results from both plugins be consistent? I mean on another set of data, I run ancom to test the impact of genotype on microbiome composition; which resulted in one taxa (acinetobacter), however when running gneiss and analyzing three main balances, I found acinetobacter in only one balance with value equal to two other taxa, that means it is not differentially abundant across different genotypes.
Please correct for me if I misunderstand.

@Eman, gneiss will not tell you which microbes are changing – it will only tell you which ratios are changing.

Think about it in terms of concentration – when you measure solute over solvent, you don’t actually determine if the solute or solvent is changing, but rather if the ratio of those two (aka the concentration) is changing.

ANCOM and Gneiss aren’t expected to be completely consistent. While they are both compositional tools, ANCOM makes some strong assumptions to help you infer which microbes are changing. Gneiss will make no such assumptions, restricting all inference to just the ratios.

1 Like

Thanks for your informative explanation. I have one more inquiry, I know DESEq2 and ANCOM; each is using different algorithm. However, I am comparing the results from both to calculate indicator species. There are common biomarkers from both methods and others are exclusively identified from each. To report my results, is it acceptable to mention biomarkers from both? and which one should I rely on for further analysis?

Thanks in advance and sorry for my lengthy questions

@Eman, I can’t comment on DESeq2 vs ANCOM at the moment. I’d consider reaching out to both of the authors of these tools – I know that Michael Love is pretty responsive concerning DESeq2 over Biostars.

Thanks a lot for your help,Your explanation is pretty simple and straight forward to the point.
For the last inquiry, I will post it on Biostars and hopefully, could get an answer.


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