The aromaticity and atom types are automatically added before the fingerprint.
https://github.com/johnmay/cdk/blob/master/src/main/org/openscience/cdk/fingerprint/Fingerprinter.java#L173
This will likely be changed in future as the fingerprinter should not have this
responsibility but I think the issue is more subtle.
J
On 22 May 2013, at 14:14, Nina Jeliazkova <[email protected]> wrote:
> The differences are most probably due to missing atom type and aromaticity
> recognition. The SmilesParser does atom typing automatically, the MDL reader
> does not, before running the fingerprinter you would need to explicitly
> invoke the atom typing and aromaticity recognition.
>
> Best regards,
> Nina
>
>
> On 22 May 2013 16:06, John May <[email protected]> wrote:
> Hi Gauri,
>
> Which fingerprinter are you using?
>
> J
>
> On 22 May 2013, at 13:45, Gauri S <[email protected]> wrote:
>
> >
> > I have used SmilesParser to parse through the smile and generate the
> > fingerprint , it prints
> > fingerprints of query:{0, 1, 17, 87, 95, 142, 168, 273, 274, 294, 299, 300,
> > 301, 306}
> >
> > when i used sdf file of same molecule and generated fingerprint , it prints
> > bitsetarray: [{17, 87, 95, 142, 273, 274, 294, 301, 306}]
> >
> > even if it same molecule , still it does not consider 0,1,168,299,300 bits
> >
> > So, can anyone please tell me why is this difference and which method is
> > suitable to get the results properly?
> >
> > this is my small part of the code
> >
> > ArrayList<IMolecule> molList= new ArrayList< IMolecule >();
> > ArrayList<BitSet> bitsetarray= new ArrayList< BitSet >();
> > ArrayList<BitSet> bitsetarray1= new ArrayList< BitSet >();
> > ArrayList<String> molidarray= new ArrayList< String >();
> > ArrayList<String> molidarray1= new ArrayList< String >();
> > //ArrayList<String> molidarray2= new ArrayList< String >();
> > IMolecule molecule = null;
> > String query =
> > "CC1=C(C)C2=C(CCC(C)(COC3=CC=C(CC4SC(=O)NC4=O)C=C3)O2)C(C)=C1O";
> > SmilesParser sp = new
> > SmilesParser(DefaultChemObjectBuilder.getInstance());
> >
> > IAtomContainer mol1 = sp.parseSmiles(query);
> > mol1 = new AtomContainer(mol1);
> > BitSet fingerprint1 = fprinter.getFingerprint(mol1);
> > System.out.println("fingerprints of query:"+fingerprint1);
> >
> >
> > File sdfFile = new File("D:/gauri/cdk/Vasodilator/DB00197.sdf");
> >
> > IteratingMDLReader reader = new IteratingMDLReader(
> > new FileInputStream(sdfFile),
> > DefaultIChemObjectBuilder.getInstance());
> >
> > System.out.println("Reading the file...");
> > while (reader.hasNext()) {
> > molecule = (IMolecule)reader.next();
> > molList.add(molecule);
> > fingerprint = fprinter.getFingerprint(molecule);
> > // fprinter.getSize(); // returns 881
> > //fingerprint.length(); // returns the highest set bit
> > bitsetarray.add(fingerprint);
> >
> >
> > molidarray.add(molecule.getProperty("DRUGBANK_ID").toString());
> > //
> > molidarray2.add(molecule.getProperty("SMILES").toString());
> >
> > }
> > --
> > View this message in context:
> > http://old.nabble.com/fingerprints-generated-differently-for-same-molecules-using-different-methods---smileparser-and-reading-the-sdf-file-using-IteratingMDLReader-tp35424370p35424370.html
> > Sent from the cdk-user mailing list archive at Nabble.com.
> >
> >
> > ------------------------------------------------------------------------------
> > Try New Relic Now & We'll Send You this Cool Shirt
> > New Relic is the only SaaS-based application performance monitoring service
> > that delivers powerful full stack analytics. Optimize and monitor your
> > browser, app, & servers with just a few lines of code. Try New Relic
> > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> > _______________________________________________
> > Cdk-user mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/cdk-user
>
>
> ------------------------------------------------------------------------------
> Try New Relic Now & We'll Send You this Cool Shirt
> New Relic is the only SaaS-based application performance monitoring service
> that delivers powerful full stack analytics. Optimize and monitor your
> browser, app, & servers with just a few lines of code. Try New Relic
> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> _______________________________________________
> Cdk-user mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/cdk-user
>
------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
Cdk-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/cdk-user