johnne / parse-db

Various scripts to parse and process bioinformatic databases
3 stars 1 forks source link

parse-db metacyc script run into error #1

Open shuqili opened 3 years ago

shuqili commented 3 years ago

Hi John,

Thank you for creating the scripts used for parsing database information. I was trying to get a newer version of metacyc pathway hierarchy file using your ' process_metacyc_db.py' script. However, I run into some error that I could not figure out by myself. Could you help me out here please? Thank you in advance. The details are as below:

Some preparation before running the script

$ mkdir parse-db-johnne $ cd parse-db-johnne/ $ nano process_metacyc_db.py $ chmod u+x process_metacyc_db.py $ module load python/2.7.14 $ module load python/2.7.14_packages/numpy/1.14.2 $ module load python/2.7.14_packages/pandas/0.18.1 $ module load pypy/2-v6.0.0_packages/python-dateutil/2.7.3 $ ./process_metacyc_db.py -h usage: process_metacyc_db.py [-h] [-d DATADIR]

optional arguments: -h, --help show this help message and exit -d DATADIR, --datadir DATADIR Metacyc data dir, containing classes.dat, reactions.dat, pathways.dat and compounds.dat. Defaults to current directory.

Since the help message pops up, I assume the script was ready to use. However it was giving errors as shown below.

$ ls classes.dat compounds.dat pathways.dat reactions.dat

$ ../process_metacyc_db.py Traceback (most recent call last): File "../process_metacyc_db.py", line 211, in main() File "../process_metacyc_db.py", line 190, in main ec2path = parse_reactions(reactions) File "../process_metacyc_db.py", line 22, in parse_reactions with open(reactions,'r', encoding="utf-8", errors="ignore") as f: TypeError: file() takes at most 3 arguments (4 given)

shuqili commented 3 years ago

Also I tried to include the 4 dat file in a folder and run the script again. But it is still giving the same error:

$ ls metacyc-v25 process_metacyc_db.py $ ls metacyc-v25/ classes.dat compounds.dat pathways.dat reactions.dat

$ ./process_metacyc_db.py -d metacyc-v25/ Traceback (most recent call last): File "./process_metacyc_db.py", line 211, in main() File "./process_metacyc_db.py", line 190, in main ec2path = parse_reactions(reactions) File "./process_metacyc_db.py", line 22, in parse_reactions with open(reactions,'r', encoding="utf-8", errors="ignore") as f: TypeError: file() takes at most 3 arguments (4 given)

shuqili commented 3 years ago

Hi John, I don't know if you already saw my post and working on it, but I have some updates from another try. Although it still cannot give me the right output, it is showing something different. Please see below for details:

Basically what I tried was to load Python3 and its packages and run the script

$ module load python3/3.5.0 $ module load python3/3.5.0_packages/numpy/1.10.1 $ module load python3/3.5.0_packages/pandas/0.24.2

$ cd parse-db-johnne/ $ ls metacyc-v25 process_metacyc_db.py

The error messages are as below:

$ ./process_metacyc_db.py -h Traceback (most recent call last): File "./process_metacyc_db.py", line 3, in import pandas as pd File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/pandas/init.py", line 13, in import(dependency) File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/init.py", line 142, in from . import core File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/init.py", line 24, in from . import multiarray File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/multiarray.py", line 14, in from . import overrides File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/overrides.py", line 188 exec(source_object, scope) SyntaxError: unqualified exec is not allowed in function 'decorator' it is a nested function

$ ./process_metacyc_db.py Traceback (most recent call last): File "./process_metacyc_db.py", line 3, in import pandas as pd File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/pandas/init.py", line 13, in import(dependency) File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/init.py", line 142, in from . import core File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/init.py", line 24, in from . import multiarray File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/multiarray.py", line 14, in from . import overrides File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/overrides.py", line 188 exec(source_object, scope) SyntaxError: unqualified exec is not allowed in function 'decorator' it is a nested function

$ ./process_metacyc_db.py -d metacyc-v25/ Traceback (most recent call last): File "./process_metacyc_db.py", line 3, in import pandas as pd File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/pandas/init.py", line 13, in import(dependency) File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/init.py", line 142, in from . import core File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/init.py", line 24, in from . import multiarray File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/multiarray.py", line 14, in from . import overrides File "/share/pkg/python3/3.5.0_packages/pandas/0.24.2/lib/python3.5/site-packages/numpy/core/overrides.py", line 188 exec(source_object, scope) SyntaxError: unqualified exec is not allowed in function 'decorator' it is a nested function