Skip to content

Instantly share code, notes, and snippets.

@yamasakih
Last active November 12, 2018 21:51
Show Gist options
  • Save yamasakih/10884f58758e587df0a98058ca83b866 to your computer and use it in GitHub Desktop.
Save yamasakih/10884f58758e587df0a98058ca83b866 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'2018.09.1'"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from rdkit import rdBase, Chem\n",
"from rdkit.Chem import AllChem, Draw\n",
"from rdkit.Chem.Draw import DrawRDKitBit, DrawRDKitBits, IPythonConsole\n",
"\n",
"\n",
"rdBase.rdkitVersion"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<rdkit.Chem.rdchem.Mol at 0x10724c940>"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mol = Chem.MolFromSmiles('c1cncn(C)1')\n",
"mol"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{5: [[1, 2], [3, 5]],\n",
" 117: [[0, 1, 2, 3, 4]],\n",
" 140: [[0, 1, 2, 5], [0, 1, 5, 3]],\n",
" 141: [[2, 3, 5, 4]],\n",
" 161: [[1, 2], [3, 5]],\n",
" 177: [[0, 1, 5, 4, 3]],\n",
" 178: [[0, 1, 5, 4]],\n",
" 259: [[1, 2, 3, 4]],\n",
" 275: [[2, 3, 5, 4]],\n",
" 383: [[0, 1, 2, 3], [0, 5, 3, 2]],\n",
" 418: [[3, 4], [4, 5]],\n",
" 470: [[0, 1, 5]],\n",
" 503: [[0, 5, 4]],\n",
" 633: [[0, 1], [0, 5]],\n",
" 684: [[0, 1], [0, 5]],\n",
" 742: [[0, 1, 2], [0, 5, 3]],\n",
" 838: [[0, 1, 2], [0, 5, 3]],\n",
" 842: [[0]],\n",
" 844: [[0, 5, 4]],\n",
" 869: [[0, 1, 5, 4, 3]],\n",
" 906: [[0, 1, 2, 5, 4]],\n",
" 947: [[0, 5, 4, 3, 2]],\n",
" 963: [[0, 5, 4, 3, 2]],\n",
" 1012: [[1, 2, 3, 5]],\n",
" 1013: [[2, 3, 4]],\n",
" 1026: [[0]],\n",
" 1027: [[1], [2], [3], [5]],\n",
" 1060: [[1], [2], [3], [5]],\n",
" 1131: [[1, 2, 3, 4]],\n",
" 1134: [[0, 1, 2, 5], [0, 1, 5, 3]],\n",
" 1177: [[0, 1, 2, 3], [0, 5, 3, 2]],\n",
" 1196: [[1, 2, 3, 5]],\n",
" 1213: [[1, 2, 3, 5, 4]],\n",
" 1256: [[3, 5, 4]],\n",
" 1373: [[0, 1, 2, 5, 4]],\n",
" 1400: [[0, 5, 4, 3]],\n",
" 1422: [[4]],\n",
" 1483: [[2, 3]],\n",
" 1505: [[0, 1, 2, 3, 5]],\n",
" 1580: [[1, 2, 3], [2, 3, 5]],\n",
" 1581: [[2, 3, 4]],\n",
" 1587: [[2, 3]],\n",
" 1657: [[4]],\n",
" 1687: [[0, 1, 5, 4]],\n",
" 1694: [[0, 1, 5]],\n",
" 1786: [[1, 2, 3], [2, 3, 5]],\n",
" 1849: [[0, 1, 2, 3, 5], [1, 2, 3, 5, 4]],\n",
" 1911: [[0, 5, 4, 3]],\n",
" 1925: [[3, 5, 4]],\n",
" 1932: [[3, 4], [4, 5]],\n",
" 1986: [[0, 1, 2, 3, 4]]}"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bi = {}\n",
"_ = AllChem.RDKFingerprint(mol, minPath=1, maxPath=5, bitInfo=bi)\n",
"bi "
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"tuples = [(mol, k, bi) for k in bi.keys()]"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"RDKit ERROR: [06:51:17] Can't kekulize mol. Unkekulized atoms: 0 1 2 3 4\n",
"RDKit ERROR: \n"
]
},
{
"ename": "ValueError",
"evalue": "Sanitization error: Can't kekulize mol. Unkekulized atoms: 0 1 2 3 4\n",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-5-409c4431c914>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mDrawRDKitBits\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtuples\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/rdkit/Chem/Draw/IPythonConsole.py\u001b[0m in \u001b[0;36mDrawRDKitBits\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 256\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 257\u001b[0m \u001b[0mfn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mDraw\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mDrawRDKitBits\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 258\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0m_DrawBit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 259\u001b[0m \u001b[0mDrawRDKitBits\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__doc__\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mDraw\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mDrawRDKitBits\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__doc__\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 260\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/rdkit/Chem/Draw/IPythonConsole.py\u001b[0m in \u001b[0;36m_DrawBit\u001b[0;34m(fn, *args, **kwargs)\u001b[0m\n\u001b[1;32m 200\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'useSVG'\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mkwargs\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 201\u001b[0m \u001b[0mkwargs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'useSVG'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mipython_useSVG\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 202\u001b[0;31m \u001b[0mres\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 203\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mkwargs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'useSVG'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 204\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mSVG\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mres\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/rdkit/Chem/Draw/__init__.py\u001b[0m in \u001b[0;36mDrawRDKitBits\u001b[0;34m(tpls, **kwargs)\u001b[0m\n\u001b[1;32m 731\u001b[0m \u001b[0mbondpath\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mbitInfo\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mbitId\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mwhichExample\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 732\u001b[0m \u001b[0menvs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmol\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbondpath\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 733\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mDrawRDKitEnvs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0menvs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 734\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 735\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mDrawRDKitBit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmol\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbitId\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbitInfo\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwhichExample\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/rdkit/Chem/Draw/__init__.py\u001b[0m in \u001b[0;36mDrawRDKitEnvs\u001b[0;34m(envs, molsPerRow, subImgSize, baseRad, useSVG, aromaticColor, extraColor, nonAromaticColor, legends, **kwargs)\u001b[0m\n\u001b[1;32m 825\u001b[0m drawer.DrawMolecules(submols, legends=legends, highlightAtoms=highlightAtoms,\n\u001b[1;32m 826\u001b[0m \u001b[0mhighlightAtomColors\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0matomColors\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mhighlightBonds\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mhighlightBonds\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 827\u001b[0;31m highlightBondColors=bondColors, highlightAtomRadii=highlightRadii, **kwargs)\n\u001b[0m\u001b[1;32m 828\u001b[0m \u001b[0mdrawer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mFinishDrawing\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 829\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mdrawer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mGetDrawingText\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mValueError\u001b[0m: Sanitization error: Can't kekulize mol. Unkekulized atoms: 0 1 2 3 4\n"
]
}
],
"source": [
"DrawRDKitBits(tuples)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"RDKit ERROR: [06:51:21] Can't kekulize mol. Unkekulized atoms: 0 1 2 3 4\n",
"RDKit ERROR: \n"
]
}
],
"source": [
"mol = Chem.MolFromSmiles('c1cncn1')"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment