todddeluca / reciprocal_smallest_distance

Reciprocal Smallest Distance (RSD) is a pairwise orthology algorithm that uses global sequence alignment and maximum likelihood evolutionary distance between sequences to accurately detects orthologs between genomes.
MIT License
13 stars 6 forks source link

No module named RSD #6

Open saoirseguita opened 4 years ago

saoirseguita commented 4 years ago

Hi,

I've tried to run RSD, but I receive the following error:

import rsd
ImportError: No module named rsd

I'm not sure whether this is because of my paths (though they appear to be correctly set), or whether the RSD module is simply no longer supported.

Any insights you might be willing to offer would be greatly appreciated!

todddeluca commented 4 years ago

Did you use pip to install it?

saoirseguita commented 4 years ago

I've installed the program via both GitHub and pip on separate occasions. I've tried installing to rsd module via:

pip install rsd

but it returns:

No matching distribution found for rsd

To clarify, I've already got the program installed, but it's not finding the rsd module.

todddeluca commented 4 years ago

I just ran pip install reciprocal_smallest_distance and ran import rsd without issue.

Without knowing more about your system, I'm trying to guess what might be wrong. Are you running a Windows OS? Could it be that rsd was installed in a different python distribution or environment or language version? Is there a way you can check which python is running rsd? If you're using one of the scripts that gets installed, like rsd_blast, you can find out (on my Mac) by running:

$ cat $(which rsd_blast) | head -n 1
#!/Users/tfd/opt/anaconda3/bin/python
saoirseguita commented 4 years ago

I'm running this via a unix terminal. I've now fixed this issue by removing all traces of RSD from my computer. I initially downloaded the zip file, but should have just used pip as you did. There was also a residual RSD python egg file buried in my conda environment, which had to be removed.

import rsd now works. However, I'm now seeing:

`$` rsd_format -g ./Proteomes/proteome.fasta -d .
Traceback (most recent call last):
  File "/home/sfoley/.conda/envs/my_root/bin/rsd_format", line 35, in <module>
    main()
  File "/home/sfoley/.conda/envs/my_root/bin/rsd_format", line 28, in main
    destFasta = rsd.copyFastaArg(args.genome, args.dir)
AttributeError: module 'rsd' has no attribute 'copyFastaArg'

I think this could be a Python 2 vs 3 issue, but I'm not entirely sure.. It seems that only Python 3.6 is installed in my conda environment, but Python 2 is also available to all users on this system.

todddeluca commented 4 years ago

I would be surprised if it worked with python3. It hasn't been translated yet.

Snt frm my tny kbrd

On Wed, Feb 12, 2020, 20:19 saoirseguita notifications@github.com wrote:

I'm running this via a unix terminal. I've now fixed this issue by removing all traces of RSD from my computer. I initially downloaded the zip file, but should have just used pip as you did. There was also a residual RSD python egg file buried in my conda environment, which had to be removed.

import rsd now works. However, I'm now seeing:

$ rsd_format -g ./Proteomes/proteome.fasta -d . Traceback (most recent call last): File "/home/sfoley/.conda/envs/my_root/bin/rsd_format", line 35, in main() File "/home/sfoley/.conda/envs/my_root/bin/rsd_format", line 28, in main destFasta = rsd.copyFastaArg(args.genome, args.dir) AttributeError: module 'rsd' has no attribute 'copyFastaArg'

I think this could be a Python 2 vs 3 issue, but I'm not entirely sure.. It seems that only Python 3.6 is installed in my conda environment, but Python 2 is also available to all users on this system.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/todddeluca/reciprocal_smallest_distance/issues/6?email_source=notifications&email_token=AABUVKMKP5URZZ3COLHYFYDRCSNYVA5CNFSM4KUDTOE2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELTAUAA#issuecomment-585501184, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABUVKJYL5JKXJROS7GIRCTRCSNYVANCNFSM4KUDTOEQ .

saoirseguita commented 4 years ago

I've just ran as you instructed, and it shows:

$ cat $(which rsd_blast) | head -n 1
#!/home/sfoley/.conda/envs/my_root/bin/python

so, it should be using the correct python.. Now I'm very confused as why the AttributeError: module 'rsd' has no attribute 'copyFastaArg' error is ocurring!

todddeluca commented 4 years ago

That is the error I got from using python3 instead of python2. If you try using python2, don't use the latest version of kalign (3.1), as it is incompatible with the CLI of the 2.04 version that RSD was tested with.

saoirseguita commented 4 years ago

$ python -V returns Python 2.7.11. I'm also using Kalign v2.03, which was listed as the "current" version on its website.

The only other potential source of error I can think of might be attributed to how I installed RSD directly into my conda environment.

todddeluca commented 4 years ago

Perhaps /home/sfoley/.conda/envs/my_root/bin/python is python3?

Snt frm my tny kbrd

On Thu, Feb 13, 2020, 11:24 saoirseguita notifications@github.com wrote:

$ python -V returns Python 2.7.11. I'm also using Kalign v2.03, which was listed as the "current" version on its website.

The only other potential source of error I can think of might be attributed to how I installed RSD directly into my conda environment.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/todddeluca/reciprocal_smallest_distance/issues/6?email_source=notifications&email_token=AABUVKM6U3HJJ4IMXPDW6O3RCVX3FA5CNFSM4KUDTOE2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELVUGWA#issuecomment-585843544, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABUVKO4BBRNPK3MNIMWCSTRCVX3FANCNFSM4KUDTOEQ .