summaryrefslogtreecommitdiff
path: root/lib/regression.rb
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2015-10-08 10:32:31 +0200
committerChristoph Helma <helma@in-silico.ch>2015-10-08 10:32:31 +0200
commit6bde559981fa11ffd265af708956f9d4ee6c9a89 (patch)
tree0fdeff56c476bb2eb0e6a2af895a1e9306645904 /lib/regression.rb
parentc974ddec27b8e505a8dc22a7c99f2e4b8682aa48 (diff)
crossvalidation plots, original classification confidence
Diffstat (limited to 'lib/regression.rb')
-rw-r--r--lib/regression.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/regression.rb b/lib/regression.rb
index 9062a9e..868c25f 100644
--- a/lib/regression.rb
+++ b/lib/regression.rb
@@ -24,16 +24,24 @@ module OpenTox
sim_sum = 0.0
confidence = 0.0
neighbors = params[:neighbors]
+ activities = []
neighbors.each do |row|
n,sim,acts = row
confidence = sim if sim > confidence # distance to nearest neighbor
# TODO add LOO errors
acts.each do |act|
weighted_sum += sim*Math.log10(act)
+ activities << act
sim_sum += sim
end
end
+ #R.assign "activities", activities
+ #R.eval "cv = cv(activities)"
+ #confidence /= activities.standard_deviation#/activities.mean
#confidence = sim_sum*neighbors.size.to_f/params[:training_dataset_size]
+ #confidence = sim_sum/neighbors.size.to_f
+ #confidence = neighbors.size.to_f
+ confidence = 0 if confidence.nan?
sim_sum == 0 ? prediction = nil : prediction = 10**(weighted_sum/sim_sum)
{:value => prediction,:confidence => confidence}
end