Hello,
I am running QIIME 2 Core - 2020.2 in VirtualBox.
I am going through the Atacama Soil Microbiome tutorial and am getting an error when trying to run the qiime diversity bioenv command. I am working on question 2 where it says "For exploring associations between continuous metadata and sample composition, the commands qiime metadata distance-matrix in combination with qiime diversity mantel and qiime diversity bioenv will be useful."
Just testing it out with one continuous variable I have run this so far:
qiime metadata distance-matrix
--m-metadata-file sample-metadata.tsv
--m-metadata-column elevation
--o-distance-matrix core-metrics-results/elevation-distance-matrix.qzaqiime diversity mantel
--i-dm1 core-metrics-results/elevation-distance-matrix.qza
--i-dm2 core-metrics-results/unweighted_unifrac_distance_matrix.qza
--p-intersect-ids
--p-label1 'Elevation'
--p-label2 'UniFrac distance matrix'
--o-visualization core-metrics-results/diversity-mantel-elevation-unifrac.qzv
This works fine. Then I run the following command and get an error:
qiime diversity bioenv
--i-distance-matrix core-metrics-results/elevation-distance-matrix.qza
--m-metadata-file sample-metadata.tsv
--o-visualization bioenv-elevation.qzv
When run with the --verbose command this is the debug info:
Traceback (most recent call last):
File "/home/qiime2/miniconda/envs/qiime2-2020.2/lib/python3.6/site-packages/q2cli/commands.py", line 328, in call
results = action(**arguments)
File "</home/qiime2/miniconda/envs/qiime2-2020.2/lib/python3.6/site-packages/decorator.py:decorator-gen-404>", line 2, in bioenv
File "/home/qiime2/miniconda/envs/qiime2-2020.2/lib/python3.6/site-packages/qiime2/sdk/action.py", line 245, in bound_callable
output_types, provenance)
File "/home/qiime2/miniconda/envs/qiime2-2020.2/lib/python3.6/site-packages/qiime2/sdk/action.py", line 452, in callable_executor
ret_val = self._callable(output_dir=temp_dir, **view_args)
File "/home/qiime2/miniconda/envs/qiime2-2020.2/lib/python3.6/site-packages/q2_diversity/_beta/_visualizer.py", line 62, in bioenv
result = skbio.stats.distance.bioenv(distance_matrix, df)
File "/home/qiime2/miniconda/envs/qiime2-2020.2/lib/python3.6/site-packages/skbio/stats/distance/_bioenv.py", line 187, in bioenv
vars_array = _scale(vars_df).values
File "/home/qiime2/miniconda/envs/qiime2-2020.2/lib/python3.6/site-packages/skbio/stats/distance/_bioenv.py", line 231, in _scale
raise ValueError("Column(s) in the data frame could not be scaled, "
ValueError: Column(s) in the data frame could not be scaled, likely because the column(s) had no variance.
My colleagues are also working on this and they have run it with other continuous variables and it always returns the same error.