public static RDKitSparseVector FromSIV(SparseIntVect64 vector) { var o = new RDKitSparseVector() { Size = vector.Count(), }; o.Nonzero = new Dictionary<long, int>(); foreach (var e in vector.getNonzero()) { o.Nonzero.Add(e.first, e.second); } return o; }
static double RDKit_SimilaritySIV64(Func <SparseIntVect64, SparseIntVect64, bool, double, double> func, string fp1, string fp2, bool returnDistance, double bounds) { var val = double.NaN; try { var sv1 = RDKitSparseVector.FromJsonToSIV(fp1); var sv2 = RDKitSparseVector.FromJsonToSIV(fp2); val = func(sv1, sv2, returnDistance, bounds); } catch (Exception) { } return(val); }
public static string ToExcelString(SparseIntVect64 vector) { return(RDKitSparseVector.ToJson(vector)); }