summaryrefslogtreecommitdiff
path: root/lib/algorithm.rb
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2010-08-05 12:55:58 +0200
committerChristoph Helma <helma@in-silico.ch>2010-08-05 12:55:58 +0200
commitb92d78620f7e9ed3a35730f867019723f51c4462 (patch)
tree1aab98345f8802edebdaf976748bf62f94aef641 /lib/algorithm.rb
parent34a7b50fb278fc37c937f2fe170b86332eb054c5 (diff)
parent9d2f25cdfc340bc7d9df7a041a5b23c1552c7d53 (diff)
Merge commit 'mguetlein/test' into development
Conflicts: lib/owl.rb
Diffstat (limited to 'lib/algorithm.rb')
-rw-r--r--lib/algorithm.rb8
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/algorithm.rb b/lib/algorithm.rb
index cc06032..f2a3618 100644
--- a/lib/algorithm.rb
+++ b/lib/algorithm.rb
@@ -22,9 +22,7 @@ module OpenTox
LOGGER.debug params
LOGGER.debug File.basename(__FILE__) + ": creating model"
LOGGER.debug File.join(@@config[:services]["opentox-algorithm"], "lazar")
- #resource = RestClient::Resource.new(File.join(@@config[:services]["opentox-algorithm"], "lazar"), :user => @@users[:users].keys[0], :password => @@users[:users].values[0], :content_type => "application/x-yaml")
resource = RestClient::Resource.new(File.join(@@config[:services]["opentox-algorithm"], "lazar"), :user => @@users[:users].keys[0], :password => @@users[:users].values[0], :content_type => "application/x-yaml")
- #@uri = resource.post(:dataset_uri => params[:dataset_uri], :feature_uri => params[:feature_uri], :feature_generation_uri => File.join(@@config[:services]["opentox-algorithm"], "fminer")).chomp
@uri = resource.post(:dataset_uri => params[:dataset_uri], :prediction_feature => params[:prediction_feature], :feature_generation_uri => File.join(@@config[:services]["opentox-algorithm"], "fminer")).body.chomp
end
@@ -37,12 +35,12 @@ module OpenTox
class Similarity
def self.weighted_tanimoto(fp_a,fp_b,p)
common_features = fp_a & fp_b
- all_features = fp_a + fp_b
+ all_features = (fp_a + fp_b).uniq
common_p_sum = 0.0
if common_features.size > 0
- common_features.each{|f| common_p_sum += p[f]}
+ common_features.each{|f| common_p_sum += OpenTox::Utils.gauss(p[f])}
all_p_sum = 0.0
- all_features.each{|f| all_p_sum += p[f]}
+ all_features.each{|f| all_p_sum += OpenTox::Utils.gauss(p[f])}
common_p_sum/all_p_sum
else
0.0