summaryrefslogtreecommitdiff
path: root/lib/classification.rb
diff options
context:
space:
mode:
authorhelma@in-silico.ch <helma@in-silico.ch>2018-10-09 18:20:27 +0200
committerhelma@in-silico.ch <helma@in-silico.ch>2018-10-09 18:20:27 +0200
commitbdc6b5b40437896384561d74a510560e9e592364 (patch)
treea77e74803bc06157ac42c722f95884c2da163a75 /lib/classification.rb
parent0a8da103e020b4a584a28a52b4ba12e1f3f90fd3 (diff)
tentative random forest classification: hangs unpredictably during caret model generation/optimization for some (inorganic?) compounds.mutanew
Diffstat (limited to 'lib/classification.rb')
-rw-r--r--lib/classification.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/classification.rb b/lib/classification.rb
index a875903..2668e4a 100644
--- a/lib/classification.rb
+++ b/lib/classification.rb
@@ -19,6 +19,7 @@ module OpenTox
probabilities[a] = w.sum/weights.sum
end
# DG: hack to ensure always two probability values
+ # TODO: does not work for arbitrary feature names FIX!!
if probabilities.keys.uniq.size == 1
missing_key = probabilities.keys.uniq[0].match(/^non/) ? probabilities.keys.uniq[0].sub(/non-/,"") : "non-"+probabilities.keys.uniq[0]
probabilities[missing_key] = 0.0
@@ -26,7 +27,7 @@ module OpenTox
probabilities = probabilities.collect{|a,p| [a,weights.max*p]}.to_h
p_max = probabilities.collect{|a,p| p}.max
prediction = probabilities.key(p_max)
- {:value => prediction,:probabilities => probabilities}
+ {:value => prediction,:probabilities => probabilities,:warnings => []}
end
end