From aada2ff67eaba251d1eeedb7f3eb29282706f997 Mon Sep 17 00:00:00 2001 From: Christoph Helma Date: Fri, 14 Oct 2016 11:09:50 +0200 Subject: weighted average for failed caret predictions fixed --- lib/caret.rb | 9 ++++++--- lib/compound.rb | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/caret.rb b/lib/caret.rb index e24c943..18bfc41 100644 --- a/lib/caret.rb +++ b/lib/caret.rb @@ -10,7 +10,6 @@ module OpenTox independent_variables.each_with_index { |values,i| remove << i if values.uniq.size == 1} remove.sort.reverse.each do |i| independent_variables.delete_at i - weights.delete_at i query_variables.delete_at i end if independent_variables.flatten.uniq == ["NA"] @@ -44,7 +43,9 @@ module OpenTox $logger.debug "R caret model creation error for:" $logger.debug dependent_variables $logger.debug independent_variables - return {:value => nil, :warning => "R caret model cration error."} + prediction = Algorithm::Regression::weighted_average dependent_variables:dependent_variables, weights:weights + prediction[:warning] = "R caret model creation error. Using weighted average of similar substances." + return prediction end begin R.eval "query <- data.frame(rbind(c(#{query_variables.join ','})))" @@ -63,7 +64,9 @@ module OpenTox rescue => e $logger.debug "R caret prediction error for:" $logger.debug self.inspect - return nil + prediction = Algorithm::Regression::weighted_average dependent_variables:dependent_variables, weights:weights + prediction[:warning] = "R caret prediction error. Using weighted average of similar substances" + return prediction end if prediction.nil? or prediction[:value].nil? prediction = Algorithm::Regression::weighted_average dependent_variables:dependent_variables, weights:weights diff --git a/lib/compound.rb b/lib/compound.rb index e2a55ea..a399169 100644 --- a/lib/compound.rb +++ b/lib/compound.rb @@ -254,7 +254,7 @@ module OpenTox end def db_neighbors min_sim: 0.1, dataset_id: - p fingerprints[DEFAULT_FINGERPRINT] + #p fingerprints[DEFAULT_FINGERPRINT] # from http://blog.matt-swain.com/post/87093745652/chemical-similarity-search-in-mongodb #qn = default_fingerprint_size -- cgit v1.2.3