Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Buprenorphine SMILES #12

Closed
dpasin opened this issue Jun 10, 2020 · 4 comments
Closed

Buprenorphine SMILES #12

dpasin opened this issue Jun 10, 2020 · 4 comments
Assignees

Comments

@dpasin
Copy link

dpasin commented Jun 10, 2020

I have been using padelpy to generate molecular descriptors and it works very well. I do have one issue though and it is that I am having trouble generating descriptors for buprenorphine. I have tried different SMILES strings and even changed the timeout paramater to 30 min and I still receive a timeout error. Curious to know why it isn't working for this SMILES string.

SMILES I have tried:

Oc7ccc5c1c7O[C@H]3[C@]6(OC)C@HC@@(C)C(C)(C)C (Wikipedia)

CC(C)(C)C(C)(C1CC23CCC1(C4C25CCN(C3CC6=C5C(=C(C=C6)O)O4)CC7CC7)OC)O (canonical PubChem)

C[C@([C@H]1C[C@@]23CC[C@@]1([C@H]4[C@@]25CCN([C@@h]3CC6=C5C(=C(C=C6)O)O4)CC7CC7)OC)(C(C)(C)C)O (isomeric PubChem)

Thank you in advance for any help you might be able to provide.

@tjkessler
Copy link
Member

Hi, @Pasin117,

Thank you for raising this issue! I've noticed that the PaDEL-Descriptor command line occasionally doesn't play nice with larger molecules, I'm still working on diagnosing the issue. In the meantime, could you:

  1. Provide a full stack trace illustrating your issue?
  2. Attempt to use PaDEL-Descriptor's GUI to calculate descriptors for the compound?

I'm looking forward to hearing back from you!

Thanks,
Travis

@tjkessler tjkessler self-assigned this Jun 11, 2020
@dpasin
Copy link
Author

dpasin commented Jun 11, 2020

Hi @tjkessler,

Thanks for your reply. For the 1st and 3rd SMILES strings I provided I get this:


Traceback (most recent call last):

File "C:\Users\Daniel\OneDrive\UCPH\Research\Scripts\PaDEL\PaDEL Descriptors.py", line 3, in
from_smiles('Oc7ccc5c1c7O[C@H]3[C@]6(OC)C@HC@@(C)C(C)(C)C', timeout=60, output_csv='Buprenorphine.csv')

File "C:\Users\Daniel\anaconda3\lib\site-packages\padelpy\functions.py", line 81, in from_smiles
del rows[0]['Name']

IndexError: list index out of range

For the 2nd SMILES string I get this:

Traceback (most recent call last):

File "C:\Users\Daniel\anaconda3\lib\site-packages\padelpy\functions.py", line 59, in from_smiles
sp_timeout=timeout

File "C:\Users\Daniel\anaconda3\lib\site-packages\padelpy\wrapper.py", line 148, in padeldescriptor
err.decode('utf-8')

RuntimeError: PaDEL-Descriptor encountered an error: PaDEL-Descriptor timed out during subprocess call

During handling of the above exception, another exception occurred:


Traceback (most recent call last):

File "C:\Users\Daniel\OneDrive\UCPH\Research\Scripts\PaDEL\PaDEL Descriptors - Basic (DP).py", line 3, in
from_smiles('CC(C)(C)C(C)(C1CC23CCC1(C4C25CCN(C3CC6=C5C(=C(C=C6)O)O4)CC7CC7)OC)O', timeout=60, output_csv='Buprenorphine.csv')

File "C:\Users\Daniel\anaconda3\lib\site-packages\padelpy\functions.py", line 68, in from_smiles
raise RuntimeError(exception)

RuntimeError: PaDEL-Descriptor encountered an error: PaDEL-Descriptor timed out during subprocess call

I have also tried the PaDEL GUI and the program hangs when it reaches buprenorphine. I have 265 compounds I need descriptors for so when I stop the process I check the csv and there are descriptors for all analytes up to buprenorphine.

Hopefully I have understood your request and provided the right things (I'm a bit of a novice).

Cheers,

Dan

@dpasin
Copy link
Author

dpasin commented Jun 11, 2020

Apologies, not sure what happened with the formatting there.

@tjkessler
Copy link
Member

@Pasin117,

While I'm not sure why PaDEL-Descriptor is timing out on the second SMILES string, I was able to identify what is causing the error associated with SMILES strings 1 and 3. It appears that PaDEL-Descriptor returns no descriptor values (or compound entries, for that matter) for the compound, causing PaDELPy to index into an empty list. The error and fix are outlined in more detail in this pull request: #13.

The underlying issue seems to be with PaDEL-Descriptor itself, as the GUI is also not able to handle these compounds.

PaDELPy version 0.1.7 includes error handling for what has occurred, and with some exception-checking on your side you should be able to account for the error! To update, run this command in your console/command prompt:

pip install --upgrade padelpy

Let me know if any other issues arise!

Best,
Travis

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants