diff options
author | Christoph Helma <helma@in-silico.ch> | 2016-05-12 15:23:01 +0200 |
---|---|---|
committer | Christoph Helma <helma@in-silico.ch> | 2016-05-12 15:23:01 +0200 |
commit | b8bb12c8a163c238d7d4387c1914e2100bb660df (patch) | |
tree | 791d1524e2294d8a3a38658607a644d7576784ae /lib/classification.rb | |
parent | 937bfbaf058aea5973927cb3bf6b51028b312ed9 (diff) |
enm study import fixed
Diffstat (limited to 'lib/classification.rb')
-rw-r--r-- | lib/classification.rb | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/lib/classification.rb b/lib/classification.rb index 4cc9201..48ff8b3 100644 --- a/lib/classification.rb +++ b/lib/classification.rb @@ -3,17 +3,15 @@ module OpenTox class Classification - def self.weighted_majority_vote compound, params - neighbors = params[:neighbors] - feature_id = params[:prediction_feature_id].to_s - dataset_id = params[:training_dataset_id].to_s + def self.weighted_majority_vote substance, neighbors sims = {} - neighbors.each do |n| - sim = n["tanimoto"] - n["toxicities"][feature_id][dataset_id].each do |act| + neighbors.each do |neighbor| + sim = neighbor["similarity"] + activities = neighbor["toxicities"] + activities.each do |act| sims[act] ||= [] sims[act] << sim - end if n["toxicities"][feature_id][dataset_id] + end if activities end sim_all = sims.collect{|a,s| s}.flatten sim_sum = sim_all.sum @@ -26,7 +24,6 @@ module OpenTox p_max = probabilities.collect{|a,p| p}.max prediction = probabilities.key(p_max) {:value => prediction,:probabilities => probabilities} - end end end |