Great, thank you! Btw, does RDKit offer any scalar vector similarity functions apart from the bit vector similarities?
On Thu, 14 Nov 2019 at 16:48, Greg Landrum <greg.land...@gmail.com> wrote: > Yep, that's about 7x faster than what I came up with. > Thanks Maciek! > > -greg > > > On Thu, Nov 14, 2019 at 4:35 PM Maciek Wójcikowski <mac...@wojcikowski.pl> > wrote: > >> Hi Thomas, >> >> You could also use SetBitsFromList() method: >> >>> bv.SetBitsFromList(np.where(ar)[0].tolist()) >>> >> >> ---- >> Pozdrawiam, | Best regards, >> Maciek Wójcikowski >> mac...@wojcikowski.pl >> >> >> czw., 14 lis 2019 o 16:28 Greg Landrum <greg.land...@gmail.com> >> napisał(a): >> >>> Hi Thomas, >>> >>> There may be more efficient ways to do this, but here's something that >>> works (and isn't the slowest thing I came up with): >>> def np_to_bv(fv): >>> bv = DataStructs.ExplicitBitVect(len(fv)) >>> for i,v in enumerate(fv): >>> if v: >>> bv.SetBit(i) >>> return bv >>> >>> -greg >>> >>> >>> >>> On Thu, Nov 14, 2019 at 3:47 PM Thomas Evangelidis <teva...@gmail.com> >>> wrote: >>> >>>> Greetings, >>>> >>>> I am opening this old thread again for someone to answer my initial >>>> question this time, which was "How do I convert numpy.ndarray objects to >>>> rdkit.DataStructs.ExplicitBitVect objects?". At the time I asked >>>> the question I circumvented the problem by calculating Tanimoto >>>> similarities with Scipy, but now I want to utilize all similarity functions >>>> offered by rdkit.DataStructs. I am struggling with that for quite some time >>>> although I feel that the answer is simple. >>>> >>>> So basically, I have these arrays and want to calculate their >>>> DataStructs.McConnaugheySimilarity similarity. How do I do it? >>>> >>>> fv1 = numpy.array([1,1,0,0,1,0,1]) >>>> >>>> >>>> fv2 = numpy.array([0,1,1,0,1,0,0]) >>>> >>>> Thanks in advance. >>>> Thomas >>>> >>>> >>>> -- >>>> >>>> ====================================================================== >>>> >>>> Dr. Thomas Evangelidis >>>> >>>> Research Scientist >>>> >>>> IOCB - Institute of Organic Chemistry and Biochemistry of the Czech >>>> Academy of Sciences >>>> <https://www.uochb.cz/web/structure/31.html?lang=en>, Prague, Czech >>>> Republic >>>> & >>>> CEITEC - Central European Institute of Technology >>>> <https://www.ceitec.eu/>, Brno, Czech Republic >>>> >>>> email: teva...@gmail.com, Twitter: tevangelidis >>>> <https://twitter.com/tevangelidis>, LinkedIn: Thomas Evangelidis >>>> <https://www.linkedin.com/in/thomas-evangelidis-495b45125/> >>>> >>>> website: https://sites.google.com/site/thomasevangelidishomepage/ >>>> >>>> >>>> >>>> _______________________________________________ >>>> Rdkit-discuss mailing list >>>> Rdkit-discuss@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss >>>> >>> _______________________________________________ >>> Rdkit-discuss mailing list >>> Rdkit-discuss@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss >>> >> -- ====================================================================== Dr. Thomas Evangelidis Research Scientist IOCB - Institute of Organic Chemistry and Biochemistry of the Czech Academy of Sciences <https://www.uochb.cz/web/structure/31.html?lang=en>, Prague, Czech Republic & CEITEC - Central European Institute of Technology <https://www.ceitec.eu/>, Brno, Czech Republic email: teva...@gmail.com, Twitter: tevangelidis <https://twitter.com/tevangelidis>, LinkedIn: Thomas Evangelidis <https://www.linkedin.com/in/thomas-evangelidis-495b45125/> website: https://sites.google.com/site/thomasevangelidishomepage/
_______________________________________________ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss