boehringer-ingelheim / pypept Goto Github PK
View Code? Open in Web Editor NEWpyPept: a python library to generate atomistic 2D and 3D representations of peptides
License: MIT License
pyPept: a python library to generate atomistic 2D and 3D representations of peptides
License: MIT License
Hi,
Thanks for this great library! it's extremely helpful.
I have several custom monomers that i would like to insert to the monomers bank and use them for peptide design, is there any documentation for how to address that issue?
I see that there are several files in data folder that (i guess) should be updated to include new monomers, but how exactly should i populate these files is a bit confusing for me. Especially the monomers.pdf - i understated that i need to generate sdf like data for each molecule i want to add, but the metadata with its abbreviations is not completely understood by me.
Hope it was clear enough and many thanks in advance for your help
Hi there!
First of all, great work, and thanks for this neat tool!
I recently encountered some issues using pyPept
with HELM strings. I installed the pyPept
package as recommended in a fresh conda environment with Python 3.9. When trying run_pyPept
with the first HELM string example from the README via
run_pyPept --helm "PEPTIDE1{P.E.P.T.I.D.E}$$$$V2.0"
I get the following error
/Users/alex/software/micromamba/envs/pypept/lib/python3.9/site-packages/pyPept/converter.py:217: UserWarning: problem with HELM string - not enough sections: PEPTIDE1{P.E.P.T.I.D.E}1731717317V2.0
warnings.warn(f'problem with HELM string - not enough sections: {helm}')
Traceback (most recent call last):
File "/Users/alex/software/micromamba/envs/pypept/lib/python3.9/site-packages/pyPept/converter.py", line 214, in eval_helm
version = self.__split_helm(helm)
File "/Users/alex/software/micromamba/envs/pypept/lib/python3.9/site-packages/pyPept/converter.py", line 112, in __split_helm
list_of_connections = helm_parts[1]
IndexError: list index out of range
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/alex/software/micromamba/envs/pypept/bin/run_pyPept", line 8, in <module>
sys.exit(main())
File "/Users/alex/software/micromamba/envs/pypept/lib/python3.9/site-packages/pyPept/interfaces/run_pyPept.py", line 141, in main
b = Converter(helm=args.helm)
File "/Users/alex/software/micromamba/envs/pypept/lib/python3.9/site-packages/pyPept/converter.py", line 54, in __init__
self.eval_helm(helm=helm)
File "/Users/alex/software/micromamba/envs/pypept/lib/python3.9/site-packages/pyPept/converter.py", line 218, in eval_helm
warnings.warn(f'need 5, have {len(self.__split_helm(helm))}')
File "/Users/alex/software/micromamba/envs/pypept/lib/python3.9/site-packages/pyPept/converter.py", line 112, in __split_helm
list_of_connections = helm_parts[1]
IndexError: list index out of range
Unfortunately, none of the HELM strings listed in the README.md seem to work.
In another attempt, I created a HELM string (oxytocin) myself using the HELM web editor. However, the resulting HELM string, PEPTIDE1{C.Y.I.Q.N.C.P.L.G.[am]}$PEPTIDE1,PEPTIDE1,1:R3-6:R3$$$V2.0
, leads to the same "not enough sections" error as shown above.
As a workaround, I could successfully run pyPept
with the oxytocin example by converting the HELM string to BILN format. This was achieved with the BILN-converter script.
The problem seems to occur in the __split_helm
function in converter.py
. For the case of oxytocin, the helm_parts
list has only one item after the splitting loop: ['PEPTIDE1{C.Y.I.Q.N.C.P.L.G.[am]},PEPTIDE1,1:R3-6:R317317.0']
. Hence, helm_parts[1]
throws an IndexError
. I can try to work on a bug fix in the coming weeks, but I would first have to familiarize myself with the HELM format and the possible variations.
Hey Team,
Thanks for a great release, I've been excited to try this out with our monomers. I converted our monomer dictionary to resemble the provided monomer file, making sure to match up all the attachment point idx, group idx, the R groups, etc.
However, when providing biln mapping to the new monomer.sdf, monomers will no longer join. The N-cap will join onto the 1st monomer, but every monomer after that will be separate.
e.g.
biln = 'ac-L-A-am'
seq=Sequence(biln)
mol = Molecule(seq)
mol2 = mol.get_molecule(fmt='ROMol')
produces acetylated leucine, followed by a separate alanine and a separate NH2 group.
Any idea what could be happening? Been stuck on this for a while. Thanks!
This looks great. Would it be possible to submit this as a package to pypi and/or conda for installs?
If you submit to pypi, I can easily put together the conda-forge package. (That part is easy if it's on PyPI .. it just takes a bit before it's approved on conda-forge.)
One or both would make it much easier to install as part of other workflows.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.