Hello,
I am attempting to use the DEICODE plugin, but I am getting what appears to be an incompatibility error.
I am running the qiime2-2023.7 version that was installed in a conda environment for the new (M2) mac. I haven't had any issues running this version of QIIME2 for other analyses/plugins. For DEICODE, I did the pip install, as directed on the qiime plugins page, and when I run the 'qiime deicode rpca --help' code, there does not appear to be any issues (all flag options populate with no errors).
However, when I attempt the full command:
qiime deicode rpca
--i-table table.qza
--o-biplot deicode-bioplot.qza
--o-distance-matrix deicode-dm.qza
--verbose
I get this error:
"Traceback (most recent call last):
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/q2cli/commands.py", line 478, in call
results = self._execute_action(
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/q2cli/commands.py", line 539, in _execute_action
results = action(**arguments)
File "", line 2, in rpca
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/qiime2/sdk/action.py", line 342, in bound_callable
outputs = self.callable_executor(
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/qiime2/sdk/action.py", line 566, in callable_executor
output_views = self._callable(**view_args)
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/deicode/rpca.py", line 52, in rpca
opt = MatrixCompletion(n_components=n_components,
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/deicode/matrix_completion.py", line 94, in fit
self._fit()
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/deicode/matrix_completion.py", line 131, in _fit
self.U, self.s, self.V = OptSpace(n_components=self.n_components,
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/deicode/optspace.py", line 109, in solve
mask = (np.abs(obs) > 0).astype(np.int)
File "/Users/megan/miniconda3/envs/qiime2-2023.7/lib/python3.8/site-packages/numpy/init.py", line 305, in getattr
raise AttributeError(former_attrs[attr])
AttributeError: module 'numpy' has no attribute 'int'.
np.int
was a deprecated alias for the builtin int
. To avoid this error in existing code, use int
by itself. Doing this will not modify any behavior and is safe. When replacing np.int
, you may wish to use e.g. np.int64
or np.int32
to specify the precision. If you wish to review your current use, check the release note link for additional information.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
NumPy 1.20.0 Release Notes — NumPy v2.0.dev0 Manual
Plugin error from deicode:
module 'numpy' has no attribute 'int'.
np.int
was a deprecated alias for the builtin int
. To avoid this error in existing code, use int
by itself. Doing this will not modify any behavior and is safe. When replacing np.int
, you may wish to use e.g. np.int64
or np.int32
to specify the precision. If you wish to review your current use, check the release note link for additional information.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
NumPy 1.20.0 Release Notes — NumPy v2.0.dev0 Manual
See above for debug info."
I then installed an older version of numpy to keep this error from occurring with:
pip install "numpy<1.20.0"
This resulted in some dependency issues with QIIME2, so I uninstalled and reinstalled numpy to get back to the most updated version. This resolved the QIIME2 issues more generally, but now I am back at square one with DEICODE not working.
Thanks for any help!
Megan