Jan,

thanks for that. I'll give it a try.
Are there any examples of writing RDKit functions and procedures for 
postgres in python?
I see this general postgres docs: 
http://www.postgresql.org/docs/9.4/static/plpython.html
but wondered if there are any RDKit specific examples anywhere?

Tim

On 25/09/2015 08:30, Jan Holst Jensen wrote:
> On 2015-09-24 16:22, Tim Dudgeon wrote:
>> I'm trying to get to grips with using the RDKit cartridge, and so far
>> its going well.
>> One thing I'm concerned about is molecule standardization, along the
>> lines of the ChemAxon Standardizer that allows substructure searches to
>> be done is a way that is largely independent of the quirks of structure
>> representation. The classic example would be how nitro groups are
>> represented, so that it didn't matter which nitro representation was in
>> the query or target structures, because both were converted to a
>> canonical form.
>>
>> My initial thoughts are that this would be done by:
>> 1. loading the "raw" structures into a source column that would never be
>> changed
>> 2. defining a function that performed the necessary transform to
>> generate the canonical form of a molecule.
>> 3. generating a "canonical" structure column that was the result of
>> passing the raw structures through that function
>> 4. building the SSS index on that canonical column
>> 5. executing queries using that function to canonicalize the query 
>> structure
>>
>> The problem I'm finding is that there do not seem to be postgres
>> functions defined for doing molecular transforms (essentially a reaction
>> transform) and doing things like removing explicit hydrogens. At least
>> not in the functions listed on this page:
>> http://rdkit.org/docs/Cartridge.html#functions
>>
>> Am I missing something here, or might I be barking up completely the
>> wrong tree?
>>
>> Tim
>
> Hi Tim,
>
> We have about the same situation and we're adding standardization 
> (beyond what RDKit implicitly does when it sanitizes the molecule) 
> through Python stored procedures. You will need to build and maintain 
> a normal Python-enabled RDKit installation in parallel to the 
> cartridge. The Python stored procedures can access the normal RDKit 
> installation and then run whatever Python code is necessary to do 
> additional molecule cleanup.
>
> You will need to tweak your Postgres environment so the Python stored 
> procedures can load RDKit. This is what I have defined in an 
> environment file on CentOS:
>
> RDBASE=/opt/rdkit
> LD_LIBRARY_PATH=/opt/rdkit/lib
> PYTHONPATH=/opt/rdkit
>
> On Ubuntu this would go into /etc/postgresql/9.x/main/environment (in 
> a slightly different format where the values have to be single-quoted).
>
> Cheers
> -- Jan, Biochemfusion


------------------------------------------------------------------------------
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to