Gneiss ilr-transform, Plugin error

Hi,

I can't seem to get past this Plugin error in gneiss when running ilr transform:

Plugin error from gneiss:



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

Here is my workflow:

qiime gneiss add-pseudocount \
  --i-table index-filtered-table.qza \
  --p-pseudocount 1 \
  --o-composition-table composition.qza

composition.qza (771.7 KB)
index-filtered-table.qza (628.1 KB)


qiime gneiss correlation-clustering \
  --i-table composition.qza \
  --o-clustering hierarchy.qza

hierarchy.qza (376.9 KB)

Then I move on to define partitions...

qiime gneiss ilr-transform \
  --i-table composition.qza \
  --i-tree hierarchy.qza \
  --o-balances balances.qza

..and here i get the aformentioned plugin error.

Plugin error from gneiss:



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

I can only suspect that the error is within the composition and/or hierarchy artefact, as my feature table worked fine throughout other qiime2 analysis, but then again I don't know :):sweat_smile::sweat_smile::sweat_smile:

Any help much appreciated.

Cheers,
Sean

Hello Sean,

Can you post that log files into this forum? You can view the full file using the cat command, like this:
cat /tmp/qiime2-q2cli-err-1d7j37cq.log

I’m not an expert on gneiss, but I bet the log file will help the qiime developers solve this problem.

Colin

3 Likes

Thank good point!

The log files indicate some sort of memory error, which has been raised in a previous post here. However no troubleshoot was given. Is this a simple case of disk space?


/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/gneiss-0.4.2-py3.5.egg/gneiss/util.py:181: FutureWarning: '.reindex_axis' is deprecated and will be removed in a future version. Use '.reindex' instead.
Traceback (most recent call last):
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/q2cli/commands.py", line 224, in __call__
    results = action(**arguments)
  File "<decorator-gen-208>", line 2, in ilr_transform
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/qiime2/sdk/action.py", line 228, in bound_callable
    output_types, provenance)
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/qiime2/sdk/action.py", line 363, in _callable_executor_
    output_views = self._callable(**view_args)
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/gneiss-0.4.2-py3.5.egg/gneiss/composition/_composition.py", line 18, in ilr_transform
    balances = ilr(_table.values, basis)
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/skbio/stats/composition.py", line 570, in ilr
    _check_orthogonality(basis)
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/skbio/stats/composition.py", line 1119, in _check_orthogonality
    if not np.allclose(inner(basis, basis), np.identity(len(basis)),
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/skbio/stats/composition.py", line 413, in inner
    a, b = clr(x), clr(y)
  File "/home/qiime2/miniconda/envs/qiime2-2017.12/lib/python3.5/site-packages/skbio/stats/composition.py", line 461, in clr
    lmat = np.log(mat)
MemoryError

Ok problem solved !

As per plugin error, the issue was the base memory.

I am running Virtualbox with the default 2GB base memory, increasing to 3 GB did the trick.

Cheers,
Sean

1 Like

Admin note: I approved these messages out of order, which was weird, so if the thread history has some strange edits… now you know why.

Thanks for posting your solution @Sean_K_Bay, that is so awesome! :t_rex::t_rex::t_rex:

2 Likes

No worries :+1:

Actually, an alternative fix to memory error is to filter the feature table prior to running gneiss, as described here.

Doing this, reduced the file size from an initial 772 kb to 147 kb.

This avoids mucking around with your memory settings.

3 Likes

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