Update announcement of shape-it #chemoinformatics #RDKit #shape-it

The end of the last year, I tried to update shape-it and shared my code on github. My new version of shape-it could supports openbabel3.x
https://github.com/iwatobipen/shape-it-ob3

After that, I got really wonderful offer from @dr_greg_landrum. He modified the code which uses RDKit instead of Openbabel and be used as library instead of command line tool. It’s really cool isn’t it?

And now new version of shape-it is available from rdkit organisation repository. URL is below. And my original repo described above is no more maintained.
https://github.com/rdkit/shape-it

This version of shape-it supports not only openbabel but also rdkit. Fortunately Greg developed conda package of shape-it (It’s really awesome work!!!!!). I would like to introduce basic usage of new version of shape-it ;) At first install shape-it. To use rdkit and to build python package BUILD_RDKIT_SUPPORT and BUILD_PYTHON_SUPPORT options should be ON.

git clone https://github.com/rdkit/shape-it.git
cd shape-it
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=<where you want to install> -DBUILD_RDKIT_SUPPORT=ON -DBUILD_PYTHON_SUPPORT=ON ..
make
make install


After the process, cpyshapeit.so file will be generated in shape-it/pyshapeit folder.

Now shape-it can be used from python. Here is a first example of cpyshapeit ;) cpyshapeit can not only calculate similarity score but also align molecule to reference mol. Wow really cool!!!!!!!!!

https://nbviewer.jupyter.org/github/rdkit/shape-it/blob/main/example_note/Align_CDK2_molecule_with_shape-it.ipynb

Next, I compared output between command line and python library. I used Trypsin I dataset from DUD-E.

$ wget http://dude.docking.org/targets/try1/try1.tar.gz
$ tar vxfz try1.tar.gz
$ cd try1

Then I made dataset with following command.

# Data from DUD-E
# http://dude.docking.org/targets/try1
# PDB ID 2ayw.pdb
# https://www.rcsb.org/3d-view/2AYW/1

from rdkit import Chem

actives = [m for m in Chem.SDMolSupplier('actives_final.sdf') if m!= None]
decoys = [m for m in Chem.SDMolSupplier('decoys_final.sdf') if m!= None]

w = Chem.SDWriter('screeningdb.sdf')
for m in actives:
    m.SetProp('Tag','ACT')
    w.write(m)

for m in decoys:
    m.SetProp('Tag', 'DEC')
    w.write(m)

w.close()

Then make score from command line.

$ shape-it -r crystal_ligand.mol2 -d screeningdb.sdf --addIterations 100 -s score.txt

Next, I tried to align with cpyshapeit and compare results between command line and cpyshapeit.

Here is the code.

Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

The results of alignment seems little bit different between command line and library. However both method shows correlation. I have to test with additional dataset.

In summary, new version of shape-it is very useful because it supports rdkit and can be called from python.

I really thank to Greg and Hans!

Advertisement

Published by iwatobipen

I'm medicinal chemist in mid size of pharmaceutical company. I love chemoinfo, cording, organic synthesis, my family.

One thought on “Update announcement of shape-it #chemoinformatics #RDKit #shape-it

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: