Skip to content

Instantly share code, notes, and snippets.

@ljmartin
Created February 9, 2024 00:27
Show Gist options
  • Save ljmartin/d1d51426295e3593d3c93ca3b6bdd879 to your computer and use it in GitHub Desktop.
Save ljmartin/d1d51426295e3593d3c93ca3b6bdd879 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,
"id": "24691302-a3eb-4df2-968b-361831030ed6",
"metadata": {},
"outputs": [],
"source": [
"from rdkit import Chem\n",
"from rdkit.Chem import Draw\n",
"from rdkit.Chem.Draw import IPythonConsole\n",
"IPythonConsole.drawOptions.addAtomIndices = True\n",
"IPythonConsole.molSize = (400, 400)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "bb8b0242-18b3-4974-b8a4-218a55fc0235",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<rdkit.Chem.rdchem.Mol at 0x1283e4820>"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"patt = Chem.MolFromSmarts('[#6]1(=[#7])-[#6](=[#7])-[#7](-[#1])-[#6]=,:[#7]-[#7]-1-[#1]')\n",
"patt"
]
},
{
"cell_type": "markdown",
"id": "95fd5982-dd4c-4bb8-8b27-4ec420318525",
"metadata": {},
"source": [
"# draw a molecule that feels like it should match:"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "2e8be240-b1c5-48fc-b6af-fa514aaea5d3",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"has match? False\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"<rdkit.Chem.rdchem.Mol at 0x1283e4900>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mol = Chem.MolFromSmiles('N=C1NC=NNC1=N')\n",
"print('has match?', mol.HasSubstructMatch(patt))\n",
"mol\n"
]
},
{
"cell_type": "markdown",
"id": "b3e48a07-9e95-48e0-b736-518dd9b6dd7d",
"metadata": {},
"source": [
"# could it be the explicit hydrogens around the NHs in the SMARTS?\n",
"\n",
"add explicit hydrogens to relevant atoms - here, atom 5 and 2."
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "b44c871b-1f18-4e8f-b75a-20ba1f84d39a",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"has match? False\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"<rdkit.Chem.rdchem.Mol at 0x1283e4a50>"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mol = Chem.MolFromSmiles('N=C1[NH]C=N[NH]C1=N')\n",
"print('has match?', mol.HasSubstructMatch(patt))\n",
"mol"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "101f222c-83d5-4fbc-813a-e97955c77650",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.11.7"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment