From: John M. <jo...@eb...> - 2013-06-06 09:57:30
|
Yep you need to take the complement of the bits. If your working on the binary it's the unary '~' operator on the BitSet it's the method named flip. BitSet set = fingerprint.asBitSet(); // 1.5.x set.flip(); J On 6 Jun 2013, at 10:49, Gauri S <she...@ya...> wrote: > > Sir , can we find those bits which are missing, > eg suppose my molecule is giving me fingerprint like this > {0, 1, 2, 9, 10, 11, 12, 14, 18, 19, 20, 33, 143, 145, 146, 178, 182, 184, > 185, 189, 192, 283, 284, 285, 286, 293, 299, 308, 332, 333, 337, 341, 344, > 346, 349, 351, 352, 353, 355, 356, 366, 368, 370, 371, 374, 381, 382, 384, > 390, 392, 393, 405, 406, 412, 416, 420, 430, 434, 439, 441, 443, 446, 451, > 470, 476, 489, 490, 498, 507, 516, 520, 524, 535, 541, 542, 548, 552, 556, > 564, 565, 567, 570, 573, 574, 578, 579, 582, 584, 586, 589, 590, 592, 594, > 595, 599, 603, 604, 606, 608, 613, 614, 617, 618, 619, 620, 626, 632, 634, > 637, 640, 641, 643, 645, 650, 651, 655, 660, 662, 664, 666, 667, 668, 677, > 678, 679, 680, 681, 683, 684, 688, 689, 692, 696, 697, 698, 699, 704, 708, > 709, 710, 712, 713, 714, 719, 734, 735, 755, 756, 776, 777, 782, 797, 798, > 818, 819} > > can i find the missing bits eg 3,4,5,6,7,8 ,,,,,, and so on ??? > > > > John May-4 wrote: >> >> No problem, >> >> Did you see the resolution? You need to add the implicit hydrogens, >> otherwise the matching isn't done correctly. >> >> Thanks, >> J >> >> On 27 May 2013, at 08:31, Gauri S <she...@ya...> wrote: >> >>> >>> Sir John , >>> I'm using Substructure fingerprinter >>> >>> >>> >>> John May-4 wrote: >>>> >>>> Hi Gauri, >>>> >>>> Which fingerprinter are you using? >>>> >>>> J >>>> >>>> On 22 May 2013, at 13:45, Gauri S <she...@ya...> 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 >>>>> Cdk...@li... >>>>> 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 >>>> Cdk...@li... >>>> https://lists.sourceforge.net/lists/listinfo/cdk-user >>>> >>>> >>> >>> -- >>> 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-tp35424370p35556643.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 >>> Cdk...@li... >>> 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 >> Cdk...@li... >> https://lists.sourceforge.net/lists/listinfo/cdk-user >> >> > -- > 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-tp35424370p35596445.html > Sent from the cdk-user mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------------ > How ServiceNow helps IT people transform IT departments: > 1. A cloud service to automate IT design, transition and operations > 2. Dashboards that offer high-level views of enterprise services > 3. A single system of record for all IT processes > http://p.sf.net/sfu/servicenow-d2d-j > _______________________________________________ > Cdk-user mailing list > Cdk...@li... > https://lists.sourceforge.net/lists/listinfo/cdk-user |