Hello,
After running gneiss I identified two outliers by looking at the residual plot and also at the proportion plot. I wanted to remove them from the analysis because they are quite different values from the rest so I filtered those two samples from the table with:
qiime feature-table filter-samples --i-table f-table.qza --m-metadata-file Mapping-file.tsv --p-where "SampleID IN ('1157B_FR900_T4', '1162B_FR900_T2')" --o-filtered-table gf-table.qza
and then rerun gneiss, but when I run the regression:
qiime gneiss ols-regression --p-formula "Paint+Paint_type+Timepoint" --i-table balances2.qza --i-tree hierarchy.qza --o-visualization regression_summary2.qza --m-metadata-file Mapping-file2.tsv
I get this error:
/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/gneiss-0.4.2-py3.5.egg/gneiss/regression/_ols.py:193: RuntimeWarning: invalid value encountered in true_divide
/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/scipy/stats/_distn_infrastructure.py:879: RuntimeWarning: invalid value encountered in greater
return (self.a < x) & (x < self.b)
/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/scipy/stats/_distn_infrastructure.py:879: RuntimeWarning: invalid value encountered in less
return (self.a < x) & (x < self.b)
/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/scipy/stats/_distn_infrastructure.py:1818: RuntimeWarning: invalid value encountered in less_equal
cond2 = cond0 & (x <= self.a)
/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/gneiss-0.4.2-py3.5.egg/gneiss/regression/_ols.py:206: RuntimeWarning: invalid value encountered in double_scalars
Traceback (most recent call last):
File "/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/q2cli/commands.py", line 224, in call
results = action(**arguments)
File "", line 2, in ols_regression
File "/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/qiime2/sdk/action.py", line 228, in bound_callable
output_types, provenance)
File "/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/qiime2/sdk/action.py", line 424, in callable_executor
ret_val = self._callable(output_dir=temp_dir, **view_args)
File "/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/q2_gneiss/regression/_regression.py", line 34, in ols_regression
ols_summary(output_dir, res, tree)
File "/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/gneiss-0.4.2-py3.5.egg/gneiss/plot/_regression_plot.py", line 277, in ols_summary
_k, _l = model.kfold(), model.lovo()
File "/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/gneiss-0.4.2-py3.5.egg/gneiss/regression/_ols.py", line 345, in kfold
folds = [np.arange(is, ((is)+s) % nobs) for i in range(num_folds)]
File "/opt/qiime2/miniconda3/envs/qiime2-2017.12/lib/python3.5/site-packages/gneiss-0.4.2-py3.5.egg/gneiss/regression/_ols.py", line 345, in
folds = [np.arange(is, ((is)+s) % nobs) for i in range(num_folds)]
ZeroDivisionError: integer division or modulo by zero
Plugin error from gneiss:
integer division or modulo by zero
See above for debug info.
I removed the samples from the metadata file (not sure if it was actually necessary), because prior to this I was getting an error about converting float NaN to integer. However, the error then changed to the I posted above.
This is the data:
gf-table.qza (80.2 KB)
balances2.qza (93.6 KB)
hierarchy.qza (77.3 KB)
Mapping-file2.tsv (2.1 KB)
Thanks