diff options
author | Christoph Helma <helma@in-silico.ch> | 2021-03-08 17:41:26 +0100 |
---|---|---|
committer | Christoph Helma <helma@in-silico.ch> | 2021-03-08 17:41:26 +0100 |
commit | 08e5768e9a446db8ab95152d2e9403a0e635ec63 (patch) | |
tree | 6f4486c6bfd84b69febcb9d3a4d9de8fee1b1a26 /lib/similarity.rb | |
parent | a29eb3e38414cd252850c9c4fb356f8b2bef6fb4 (diff) |
cdk predictions fixed
Diffstat (limited to 'lib/similarity.rb')
-rw-r--r-- | lib/similarity.rb | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/lib/similarity.rb b/lib/similarity.rb index deeb81f..346a342 100644 --- a/lib/similarity.rb +++ b/lib/similarity.rb @@ -1,11 +1,4 @@ -class Similarity - - # Get Tanimoto similarity - # @param [Array<Array<String>>] - # @return [Float] - def self.tanimoto fingerprints - ( fingerprints[0] & fingerprints[1] ).size/( fingerprints[0] | fingerprints[1] ).size.to_f - end +class Distance # Get Euclidean distance # @param [Array<Array<Float>>] @@ -14,6 +7,16 @@ class Similarity sq = variables[0].zip(variables[1]).map{|a,b| (a - b) ** 2} Math.sqrt(sq.inject(0) {|s,c| s + c}) end +end + +class Similarity + + # Get Tanimoto similarity + # @param [Array<Array<String>>] + # @return [Float] + def self.tanimoto fingerprints + ( fingerprints[0] & fingerprints[1] ).size/( fingerprints[0] | fingerprints[1] ).size.to_f + end # Get cosine similarity # http://stackoverflow.com/questions/1838806/euclidean-distance-vs-pearson-correlation-vs-cosine-similarity |