hmarti
July 29, 2024, 5:21pm
1
Hello,
I am trying to run the mmvec plug-in in qiiime2020.2 and keep getting the same error code:
Plugin error from mmvec:
'a' cannot be empty unless no samples are taken
from this command
qiime mmvec paired-omics
--i-microbes Bf2s2filteredtable.qza
--i-metabolites Ff2s2filteredtable2.qza
--p-summary-interval 1
--output-dir model_summary
My understanding of this error is that it is saying that the tables are empty but when I convert the files to .qzv I can see results so it can't be empty. Any ideas on what could be going on?
mortonjt
(Jamie Morton)
July 31, 2024, 9:37am
3
Hi, yes there are a couple of issues on the GitHub issuetracker with this error
opened 08:57PM - 17 Dec 20 UTC
closed 10:56PM - 21 Feb 21 UTC
I wanted to let you all know that I ran into an error and it was not clear to me… what was wrong.
Jamie already let me know it was probably the issue that the rows and columns were swapped (and that was indeed the case!)
and before I put in the error code some suggestions, as i'm not familiar with qiime and very limited with python, so I'm running into a lot of things that are not clear for a not advanced user:
- It is not obvious if this program is run with python 2 or 3
- which packages are required and which versions
- do you need a .biom table in a json or hdf5 format?
- and what the orientation should be of the biom tables.
also, i'm getting alot of warnings tahat something from tensorflow is deprecated.
Super cool tool!
Thanks,
Milou
error:
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/biom/table.py:4068: FutureWarning: SparseDataFrame is deprecated and will be removed in a future version.
Use a regular DataFrame whose columns are SparseArrays instead.
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
return constructor(mat, index=index, columns=columns)
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/sparse/frame.py:257: FutureWarning: SparseSeries is deprecated and will be removed in a future version.
Use a Series with sparse values instead.
>>> series = pd.Series(pd.SparseArray(...))
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
sparse_index=BlockIndex(N, blocs, blens),
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/generic.py:4583: FutureWarning: SparseSeries is deprecated and will be removed in a future version.
Use a Series with sparse values instead.
>>> series = pd.Series(pd.SparseArray(...))
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
return self._constructor(new_data).__finalize__(self)
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/sparse/frame.py:854: FutureWarning: SparseDataFrame is deprecated and will be removed in a future version.
Use a regular DataFrame whose columns are SparseArrays instead.
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
default_kind=self._default_kind,
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/frame.py:3471: FutureWarning: SparseSeries is deprecated and will be removed in a future version.
Use a Series with sparse values instead.
>>> series = pd.Series(pd.SparseArray(...))
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
return klass(values, index=self.index, name=items, fastpath=True)
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/sparse/frame.py:785: FutureWarning: SparseDataFrame is deprecated and will be removed in a future version.
Use a regular DataFrame whose columns are SparseArrays instead.
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
return self._constructor(new_arrays, index=index, columns=columns).__finalize__(
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/ops/__init__.py:1641: FutureWarning: SparseSeries is deprecated and will be removed in a future version.
Use a Series with sparse values instead.
>>> series = pd.Series(pd.SparseArray(...))
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
return self._constructor(new_values, index=self.index, name=self.name)
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/sparse/frame.py:339: FutureWarning: SparseDataFrame is deprecated and will be removed in a future version.
Use a regular DataFrame whose columns are SparseArrays instead.
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
default_fill_value=self.default_fill_value,
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/generic.py:5884: FutureWarning: SparseSeries is deprecated and will be removed in a future version.
Use a Series with sparse values instead.
>>> series = pd.Series(pd.SparseArray(...))
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
return self._constructor(new_data).__finalize__(self)
/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/pandas/core/generic.py:3606: FutureWarning: SparseDataFrame is deprecated and will be removed in a future version.
Use a regular DataFrame whose columns are SparseArrays instead.
See http://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#migrating for more.
result = self._constructor(new_data).__finalize__(self)
Traceback (most recent call last):
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/bin/mmvec", line 233, in <module>
mmvec()
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/bin/mmvec", line 125, in paired_omics
min_samples=min_feature_count)
File "/opt/biolinux/anaconda3/envs/qiime2-2020.6/lib/python3.6/site-packages/mmvec/util.py", line 161, in split_tables
sample_ids = set(np.random.choice(microbes_df.index, size=num_test))
File "mtrand.pyx", line 900, in numpy.random.mtrand.RandomState.choice
ValueError: 'a' cannot be empty unless no samples are taken
(qiime2-2020.6) [marts@no73 ~]$
opened 07:24AM - 16 Jul 20 UTC
closed 07:19PM - 13 Aug 20 UTC
Hi
I installed mmvec and completed the example successfully
After a while, … using my data i have the following error:
ValueError: 'a' cannot be empty unless no samples are taken
I think its related to my data organization, but i think i have done them correctly
Could you please guide me what might be the problem?
Thank you so much
Typically it is because all of the samples are getting filtered out, due to either the default filtering criteria (i.e. samples with less than 1000 reads being filtered out), or a mismatch between the two tables, or a mismatch with respect to the metadata.
2 Likes
system
(system)
Closed
August 31, 2024, 8:44pm
6
This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.