Hi Jing, Most fingerprints are binary, thus can be stored as np.bool_, which compared to double should be 64 times more memory efficient.
Best, Maciej ---- Pozdrawiam, | Best regards, Maciek Wójcikowski mac...@wojcikowski.pl 2015-08-27 16:15 GMT+02:00 Jing Lu <ajin...@gmail.com>: > Hi Greg, > > Thanks! It works! But, is that possible to fold the fingerprint to smaller > size? np.zeros((1000000,2048)) still takes a lot of memory... > > > Best, > Jing > > On Wed, Aug 26, 2015 at 11:02 PM, Greg Landrum <greg.land...@gmail.com> > wrote: > >> >> On Thu, Aug 27, 2015 at 3:00 AM, Jing Lu <ajin...@gmail.com> wrote: >> >>> >>> So, I wonder is there any way to convert fingerprint to a numpy vector? >>> >> >> Indeed there is: >> >> In [11]: from rdkit import Chem >> >> In [12]: from rdkit import DataStructs >> >> In [13]: import numpy >> >> In [14]: m =Chem.MolFromSmiles('C1CCC1') >> >> In [15]: fp = Chem.RDKFingerprint(m) >> >> In [16]: fpa = numpy.zeros((len(fp),),numpy.double) >> >> In [17]: DataStructs.ConvertToNumpyArray(fp,fpa) >> >> >> Best, >> -greg >> >> > > > ------------------------------------------------------------------------------ > > _______________________________________________ > 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