I always wanted to familiarize myself with the biopython modules. But its just that I am so familiar with the pymol API- i.e python scripting of "headless" pymol that I will probably use it for this project
I have a csv list of all ligands in the pdb and their associated ids.This list has 23000 entries and possibly 10,000 unique pdb ids
I need to compile a list of all ligands from this list which are within h-bonding distance of Gln.
My current approach is to download-pdb coordinate then query and report using pymol and python scripting , since I know the pymol API and python.
Instead , can I simply get the list of interactions already compiled for each pdb id using some HTTP/REST/Web service interface and then get at the presence absence of Gln in that list?
I am looking for suggestions on how to implement this without downloading and querying.
5 answers
You can download the software from http://www.ebi.ac.uk/pdbe-site/pdbemotif/
under the link Download the software and source code there. It should generate a database of all interactions <16A and possibly divide into interaction types like H-bonds, van der Waals (I am not sure exactly, you must try yourself).
The only problem that according to README generation of the database will take a lot of time and disk space!
The easiest might be using the CREDO database, which comes with a CC-SA license, a MySQL dump, and a well developed Python interface.
I'm afraid the tool you're looking for does not exist.
As you already know Python, there's a relatively easy way to do it using NeighbourSearch from the PDB module of BioPython on the PDB files directly (i.e, not loading them into PyMOL).
You're welcome to refine your question if you get stuck somewhere along the way.
If you're working with pdb structures a lot the module will definitely benefit you, if for no other than the reason that it runs at (almost) C speed without the PyMOL-specific overhead.
Does the module handle alternate locations for a residue?. I may end up going this route since I am having problems running "headless" pymol
Thanks for this Pointer . Currently reading : PDB file parser and structure class implemented in Python T Hamelryck (2003). PMID :14630660 The Biopython PDB library seems to fit the bill. Plus having problems running headless pymol
AFAIK, this data is not readily available, but I know this data is hidden somewhere in PDBSum.
For example
See PDB ID 1ASH in PDBSum, here you can see the plot, this plot includes the information about the
residues that interacts with the ligands (red squares indicates residues which interacts with the ligand). This data must be available from PDBSum. You may request Dr. Roman Laskowski for the raw data. In 2008, I requested similar type of data from PDBSum and they provided scriptable (via Mechanize) access to the data that generate similar type of figures.

They also have LIGPLOTs of the PDB Structures, for example:
To produce LIGPLOTs they should have run HBPLUS, you can use those HBPLUS output to get the information you are looking.
PS. NON-REST/WS option: Download PDBs, install HBPLUS / hbond(part of JOY package). Run the program, parse file using the chain IDs. Filter for Glycines.
I was really hoping that the raw data that went into ligplot was queryable. Regardless thanks for the pointer to HBPLUS.
I cannot use HBPLUS because of licence restrictions
How about JOY See: http://www.ncbi.nlm.nih.gov/pubmed/9730927 http://tardis.nibio.go.jp/joy/download.htm ?
Hi Khader , Thanks to your suggestion I wrote to Dr Laskowski . In his very detailed reply he told me how I could accomplish this. Basically the grow.out info is what I need
"The address of each grow.out file is:
http://www.ebi.ac.uk/thornton-srv/databases/pdbsum/XXXX/grow.out
where XXXX is the PDB code."
Hari Glad that it worked !!
You may check the (commercial) RELIBASE databse. Knowledge based scoring functions typically use the same kind of information you've mentioned. Check if ISOSTAR/SUPERSTAR can serve your purpose. =
Log in to answer this question.
Can you please add few PDB IDs to the question ?