picrust / picrust

Phylogenetic Investigation of Communities by Reconstruction of Unobserved STates (PICRUST): Official repository for software and unit tests
http://picrust.github.com
GNU General Public License v3.0
90 stars 39 forks source link

Categorize by function fails on galaxy #253

Open maxf130 opened 6 years ago

maxf130 commented 6 years ago

Hi,

I have just installed picrust on our local galaxy instance. Whenever I try to run the Catogrize by function part of picrust, I get the following error:

 Fatal error: Exit code 1 ()
Traceback (most recent call last):
  File "/home/galaxy/galaxy/database/dependencies/_conda/envs/__picrust@1.1.1/bin/categorize_by_function.py", line 113, in <module>
    main()
  File "/home/galaxy/galaxy/database/dependencies/_conda/envs/__picrust@1.1.1/bin/categorize_by_function.py", line 100, in main
    one_to_many_md_key=opts.metadata_category)
  File "/home/galaxy/galaxy/database/dependencies/_conda/envs/__picrust@1.1.1/lib/python2.7/site-packages/biom/table.py", line 2400, in collapse
    for id_, md in zip(*axis_ids_md(self)):
TypeError: izip argument #2 must support iteration

I really have no idea where to start troubleshooting this. I beleive this is running with python version 2.7.12, although I am not 100% sure of that. I believe the biom version is 2.1.6.

The normalize and predict metagenome part of picrust appears to be working just fine.

Any help is highly appreciated.

gavinmdouglas commented 6 years ago

I'm not sure what is causing this error, but are you sure you're using biom v2.1.6? It seems like it could be a version incompatibility issue, but I'm not sure beyond that unfortunately.

Best,

Gavin

On 3/30/2018 12:58 PM, Maximilian Friedersdorff wrote:

Hi,

I have just installed picrust on our local galaxy instance. Whenever I try to run the Catogrize by function part of picrust, I get the following error:

|Fatal error: Exit code 1 () Traceback (most recent call last): File "/home/galaxy/galaxy/database/dependencies/_conda/envs/__picrust@1.1.1/bin/categorize_by_function.py", line 113, in main() File "/home/galaxy/galaxy/database/dependencies/_conda/envs/picrust@1.1.1/bin/categorize_by_function.py", line 100, in main one_to_many_md_key=opts.metadata_category) File "/home/galaxy/galaxy/database/dependencies/_conda/envs/picrust@1.1.1/lib/python2.7/site-packages/biom/table.py", line 2400, in collapse for id_, md in zip(*axis_ids_md(self)): TypeError: izip argument #2 must support iteration |

I really have no idea where to start troubleshooting this. I beleive this is running with python version 2.7.12, although I am not 100% sure of that. I believe the biom version is 2.1.6.

The normalize and predict metagenome part of picrust appears to be working just fine.

Any help is highly appreciated.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/picrust/picrust/issues/253, or mute the thread https://github.com/notifications/unsubscribe-auth/AL6T0-MUv2m7HGtD06YQFY86Bpe3in8vks5tjlYigaJpZM4TB2JT.

maxf130 commented 6 years ago

I'm fairly sure:

$ grep __version__ /home/galaxy/galaxy/database/dependencies/_conda/envs/__picrust@1.1.1/lib/python2.7/site-packages/biom/util.py
__version__ = "2.1.6"
maxf130 commented 6 years ago

Hi again. I've since confirmed that this is not an issue with galaxy. I've installed picrust from source as described by https://picrust.github.io/picrust/install.html#install-from-source-step-1-install-requirements.

Then running categorize_by_funciton.py on the command line results in the following:

/usr/local/picrust/local/lib/python2.7/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
  from ._conv import register_converters as _register_converters
Traceback (most recent call last):
  File "/usr/local/picrust/bin/categorize_by_function.py", line 113, in <module>
    main()
  File "/usr/local/picrust/bin/categorize_by_function.py", line 100, in main
    one_to_many_md_key=opts.metadata_category)
  File "/usr/local/picrust/local/lib/python2.7/site-packages/biom/table.py", line 2400, in collapse                                                                          
    for id_, md in zip(*axis_ids_md(self)):
TypeError: izip argument #2 must support iteration

The FutureWarning can presumably be ignored.

It's worth noting that the installed version is 1.1.3

maxf130 commented 6 years ago

I've also just confirmed this behaviour on another machine running python version 2.7.14 instead of 2.7.12.

gavinmdouglas commented 6 years ago

Hi again,

Thanks for sharing this information, but unfortunately I still haven’t been able to reproduce this error.

Did you install PICRUSt v1.1.3 the last time? Yes that future warning shouldn’t be related and can be ignored.

Can you confirm what versions of biom-format, numpy, and h5py that you’re using?

If your biom table is in JSON format then you could try converting it to HDF5 first as well.

On Apr 18, 2018, at 11:44 AM, Maximilian Friedersdorff notifications@github.com wrote:

I've also just confirmed this behaviour on another machine running python version 2.7.14 instead of 2.7.12.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/picrust/picrust/issues/253#issuecomment-382412264, or mute the thread https://github.com/notifications/unsubscribe-auth/AL6T04_KPExV6u5Hiaxm_rJnN5r4GFdzks5tp1FmgaJpZM4TB2JT.

jesusbvf commented 4 years ago

I also got that error, HELP