Hi Jose,

There isn’t currently anything in the cartridge that allows you to retrieve
the matching atom ids for a substructure query. I think it should be
possible to add the functionality, but I need to take a look.

-greg

On Mon, 10 Dec 2018 at 13:41, Jose Manuel Gally <[email protected]>
wrote:

> Hi all,
>
> I am using the RDKit postgresql cartridge to perform some substructure
> searches on a large number of molecules, as described here:
>
> https://www.rdkit.org/docs/Cartridge.html
>
> However, in addition to which row matched the query, I would also like
> to know what are the atom indices for each match.
>
> For now I am doing this in 2 consecutive steps, as shown below.
>
> Is there a way to achieve this in a single step from the postgresql query?
>
> Thanks!
>
> Best regards,
>
> Jose Manuel
>
>
> # 0/ initialization
> query_smiles = "c1ccccc1"
> query_mol = Chem.MolFromSmiles(query_smiles)
>
> # 1/ get substructure matches
> cur.execute(f"select mol_send(m) from rdk.mols where m@>'{query_smiles}'
> LIMIT 1")
> results = cur.fetchall()
> mols = [ Chem.Mol(m[0].tobytes()) for m in results ]
>
> # 2/ get substructure atom indexes:
> for m in mols:
>      print(m.GetSubstructMatches(query_mol))
>
>
> And for instance I get as results the substructures atom indices:
> ((5, 6, 7, 8, 16, 21), (9, 10, 11, 12, 14, 15), (22, 23, 24, 25, 33, 34))
>
>
>
> _______________________________________________
> Rdkit-discuss mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>
_______________________________________________
Rdkit-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to