summaryrefslogtreecommitdiff
path: root/lib/validation-statistics.rb
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2016-06-01 10:37:00 +0200
committerChristoph Helma <helma@in-silico.ch>2016-06-01 10:37:00 +0200
commit65b69d4c35890a7a2d2992108f0cf4eb5202dd1b (patch)
treed8583d3e745cc21a6897081d28e157f5c0c16024 /lib/validation-statistics.rb
parentb515a0cfedb887a2af753db6e4a08ae1af430cad (diff)
validation tests fixed
Diffstat (limited to 'lib/validation-statistics.rb')
-rw-r--r--lib/validation-statistics.rb19
1 files changed, 10 insertions, 9 deletions
diff --git a/lib/validation-statistics.rb b/lib/validation-statistics.rb
index 816824b..e42d298 100644
--- a/lib/validation-statistics.rb
+++ b/lib/validation-statistics.rb
@@ -98,8 +98,8 @@ module OpenTox
def statistics
# TODO: predictions within prediction_interval
- rmse = 0
- mae = 0
+ self.rmse = 0
+ self.mae = 0
x = []
y = []
predictions.each do |cid,pred|
@@ -107,8 +107,8 @@ module OpenTox
x << pred[:measurements].median
y << pred[:value]
error = pred[:value]-pred[:measurements].median
- rmse += error**2
- mae += error.abs
+ self.rmse += error**2
+ self.mae += error.abs
else
warnings << "No training activities for #{Compound.find(compound_id).smiles} in training dataset #{model.training_dataset_id}."
$logger.debug "No training activities for #{Compound.find(compound_id).smiles} in training dataset #{model.training_dataset_id}."
@@ -117,17 +117,18 @@ module OpenTox
R.assign "measurement", x
R.assign "prediction", y
R.eval "r <- cor(measurement,prediction,use='pairwise')"
- r = R.eval("r").to_ruby
+ self.r_squared = R.eval("r").to_ruby**2
- mae = mae/predictions.size
- rmse = Math.sqrt(rmse/predictions.size)
- $logger.debug "R^2 #{r**2}"
+ self.mae = self.mae/predictions.size
+ self.rmse = Math.sqrt(self.rmse/predictions.size)
+ $logger.debug "R^2 #{r_squared}"
$logger.debug "RMSE #{rmse}"
$logger.debug "MAE #{mae}"
+ save
{
:mae => mae,
:rmse => rmse,
- :r_squared => r**2,
+ :r_squared => r_squared,
}
end