diff options
author | Christoph Helma <helma@in-silico.ch> | 2016-10-14 11:09:50 +0200 |
---|---|---|
committer | Christoph Helma <helma@in-silico.ch> | 2016-10-14 11:09:50 +0200 |
commit | aada2ff67eaba251d1eeedb7f3eb29282706f997 (patch) | |
tree | 961a178957d729d940d06c05fd35b7308f4a7645 /lib | |
parent | fbded88db8b51f41ffbd5a02f601e4538ec87258 (diff) |
weighted average for failed caret predictions fixed
Diffstat (limited to 'lib')
-rw-r--r-- | lib/caret.rb | 9 | ||||
-rw-r--r-- | lib/compound.rb | 2 |
2 files changed, 7 insertions, 4 deletions
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 |