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 <[email protected]> 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 <[email protected]> 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 <[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
>>>> 
>>>> 
>>> 
>>> -- 
>>> 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
>>> [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
>> 
>> 
> -- 
> 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
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/cdk-user

------------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/cdk-user

Reply via email to