Hi John,

You say that by using DescriptorEngine you first define which descriptors you want. Do you then process them individually using their constructors or the two lines (descriptors.process(container) and container.getProperties()) calculate those descriptors automatically?

Please advice

Regards,
Anurag


On Thu, Jan 30, 2014 at 10:09 PM, John May <johnmay@ebi.ac.uk> wrote:
Hi Anurag,

I’m not sure what, CDKDesc.jar is - It’s not currently release by us. Perhaps someone on list knows? The jar you need can be downloaded from here: https://sourceforge.net/projects/cdk/files/. Look for ‘cdk-1.5.5.jar’ or ‘cdk-1.4.19.jar’.

The CDK does divide descriptors as 1D, 2D etc but rather atomic, bond or molecular. It sounds like you’re interested in molecular descriptors ‘cdk-qsar’ module. Fingerprints are not considered descriptors in the cdk (available in ‘cdk-fingerprint’ module) but should be easy to figure out. Here is the current list of molecular descriptors - https://github.com/cdk/cdk/blob/master/src/main/META-INF/services/org.openscience.cdk.qsar.IMolecularDescriptor

I’ve attached an example (below) of using the DescriptorEngine in 1.5.-. We define which molecular qsar-descriptors we want and then process each entry. Results are stored on the properties of each molecule.

If you just want the descriptors there are several user interfaces that will provide this functionality.
http://padel.nus.edu.sg/software/padeldescriptor/ (CDK 1.4.-) - also available in Knime
http://tech.knime.org/community/cdk (CDK 1.5.-)
https://github.com/johnmay/cdk/tree/master/src/main/org/openscience/cdk/

Thanks,
John

String fname = "/Users/johnmay/Desktop/input.sdf";
        
        IChemObjectBuilder bldr        = SilentChemObjectBuilder.getInstance();
        DescriptorEngine   descriptors = new DescriptorEngine(Arrays.asList(XLogPDescriptor.class.getName(),
                                                                            ALOGPDescriptor.class.getName(),
                                                                            RuleOfFiveDescriptor.class.getName()),
                                                              bldr);                 
        
        IteratingSDFReader sdf = new IteratingSDFReader(new FileReader(fname), bldr, true);
        while (sdf.hasNext()) {
            IAtomContainer container = sdf.next();
            descriptors.process(container);            
            
            // atomic/bond properties are set on atoms and bonds
            for (Map.Entry<Object,Object> e : container.getProperties().entrySet()) {
                if (e.getKey() instanceof DescriptorSpecification) {
                    System.out.print(((DescriptorSpecification) e.getKey()).getImplementationTitle() + ": ");
                    System.out.println(((DescriptorValue) e.getValue()).getValue());
                }
            }
        }
        sdf.close();

On 30 Jan 2014, at 16:06, Anurag Passi <anuragpassibioinfo@gmail.com> wrote:

Sorry to bother you again. Could you provide me with all the descriptors (hybrid,constitutional,topological,electronic and geometrical) present in the CDKDesc.jar?


On Thu, Jan 30, 2014 at 9:26 PM, Anurag Passi <anuragpassibioinfo@gmail.com> wrote:
Sorry, sent the message by mistake.

I am looking for the primary 1D, 2D and 3D descriptor (eg: lipinski descriptors, pharmacophore descriptors, topological descriptors and a couple of good fingerprints like PubChem fingerprints, MACCS keys, or any other.)

Does that answer your question?

I do not know if there are any more important and basic descriptors that are usually used.

I am writing one script as well but if you could provide me yours it can help me do my work quickly.

Regards,
Anurag


On Thu, Jan 30, 2014 at 9:22 PM, Anurag Passi <anuragpassibioinfo@gmail.com> wrote:

Hi John,

I am looking for the primary 1d

On 30 Jan 2014 20:42, "John May" <johnmay@ebi.ac.uk> wrote:
Hi Anurag,

Sure - I can provide an example. Which version of CDK are you using? Also what type of descriptors, atomic, bond or molecular?

Thanks,
J

On 30 Jan 2014, at 09:21, Anurag Passi <anuragpassibioinfo@gmail.com> wrote:

> Hello,
>
> I have just started with writing Java program using CDK and I am having a little problem in claculating descriptors. I was wondering if there is a simple code or snippet that uses DescriptorEngine() to calculate all the molecular descriptors for a list of molecules in sdf file.
>
> Please advice,
> Anurag
>
> --
> Anurag Passi
> Sr. Project Fellow
> OSDD, CSIR
> 00-91-9899767938
> skype: anurag.passi
> ------------------------------------------------------------------------------
> WatchGuard Dimension instantly turns raw network data into actionable
> security intelligence. It gives you real-time visual feedback on key
> security issues and trends.  Skip the complicated setup - simply import
> a virtual appliance and go from zero to informed in seconds.
> http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk_______________________________________________
> Cdk-user mailing list
> Cdk-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/cdk-user




--
Anurag Passi
Sr. Project Fellow
OSDD, CSIR
00-91-9899767938
skype: anurag.passi



--
Anurag Passi
Sr. Project Fellow
OSDD, CSIR
00-91-9899767938
skype: anurag.passi




--
Anurag Passi
Sr. Project Fellow
OSDD, CSIR
00-91-9899767938
skype: anurag.passi