Is there any flag in RDkit to match both 'normal' aspirin and embedded
aromatic analogues?
The problem is that I can't modify user queries by hand in real time :)

On Wed, Sep 13, 2017 at 2:12 PM, Chris Earnshaw <cgearns...@gmail.com> wrote:
> Hi
>
> The problem is due to RDkit perceiving the embedded pyranone in
> CHEMBL1999443 as an aromatic system, which is probably correct. However, in
> the structure of aspirin the carboxyl carbon and singly bonded oxygen are
> non-aromatic, so if you just use the SMILES of aspirin as a query it won't
> match CHEMBL1999443
>
> You'll need to use a slightly more generic aspirin-like query to allow the
> possibility of matching both 'normal' aspirin and embedded aromatic
> analogues. CC(=O)Oc1ccccc1[#6](=O)[#8] should work OK.
>
> Regards,
> Chris
>
> On 13 September 2017 at 13:40, Michał Nowotka <mmm...@gmail.com> wrote:
>>
>> Hi,
>>
>> This problem is probably due to my lack of chemistry knowledge but
>> plese have a look:
>>
>> If I do a substructure search in ChEMBL using aspirin (CHEMBL25) as a
>> query (ChEMBL API uses the Symix catridge):
>>
>>     from chembl_webresource_client.new_client import new_client
>>     res = new_client.substructure.filter(chembl_id='CHEMBL25')
>>
>> One of them will be CHEMBL1999443:
>>
>>     'CHEMBL1999443' in (r['molecule_chembl_id'] for r in res)
>>     >>> True
>>
>> Now I take the molfile:
>>
>>     new_client.molecule.set_format('mol')
>>     mol = new_client.molecule.get('CHEMBL1999443')
>>
>> and load it with aspirin into rdkit:
>>
>>     from rdkit import Chem
>>     m = Chem.MolFromMolBlock(mol)
>>     pattern = Chem.MolFromMolBlock(new_client.molecule.get('CHEMBL25'))
>>
>> If I check if it has an aspirin as a substructure using rdkit, I'm
>> getting false...
>>
>>     m.HasSubstructMatch(pattern)
>>     >>> False
>>
>> Looking at this blog post:
>>
>> https://github.com/rdkit/rdkit-tutorials/blob/master/notebooks/002_SMARTS_SubstructureMatching.ipynb
>> I tried to initialize rings and retry:
>>
>>      Chem.GetSymmSSSR(m)
>>      m.HasSubstructMatch(pattern)
>>      >>>False
>>
>>     Chem.GetSymmSSSR(pattern)
>>     m.HasSubstructMatch(pattern)
>>     >>>False
>>
>> But as you can see without any luck. Is there anything else I can do
>> to get the match anyway?
>> Without having a match I can't aligh and higlight asprin substructure
>> in CHEMBL1999443 image using GenerateDepictionMatching2DStructure and
>> DrawMolecule functions.
>>
>> Kind regards,
>>
>> Michał Nowotka
>>
>>
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>> _______________________________________________
>> Rdkit-discuss mailing list
>> Rdkit-discuss@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to