summaryrefslogtreecommitdiff
path: root/lib/algorithm.rb
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.de>2010-02-22 17:53:17 +0100
committerChristoph Helma <helma@in-silico.de>2010-02-22 17:53:17 +0100
commit66af8a8f648c41321189800cd81246f28d046fe6 (patch)
tree6b7e3d860209fd4bdd3af6e927f6f64ee64a15ff /lib/algorithm.rb
parent8946f755a1b6063d424263924acefce0d0d9d49e (diff)
parent53d755065500701a46b2a3754dc1299febe79c43 (diff)
authorisation merged from micha
Diffstat (limited to 'lib/algorithm.rb')
-rw-r--r--lib/algorithm.rb77
1 files changed, 40 insertions, 37 deletions
diff --git a/lib/algorithm.rb b/lib/algorithm.rb
index 25ae4cb..ed7b629 100644
--- a/lib/algorithm.rb
+++ b/lib/algorithm.rb
@@ -1,27 +1,28 @@
module OpenTox
- module Algorithm
+ module Algorithm
- class Fminer
- include Owl
+ class Fminer
+ include Owl
- def initialize
- super
- self.uri = File.join(@@config[:services]["opentox-algorithm"],'fminer')
- self.title = "fminer"
- self.source = "http://github.com/amaunz/libfminer"
- self.parameters = {
- "Dataset URI" => { :scope => "mandatory", :value => "dataset_uri" },
- "Feature URI for dependent variable" => { :scope => "mandatory", :value => "feature_uri" }
- }
- end
+ def initialize
+ super
+ self.uri = File.join(@@config[:services]["opentox-algorithm"],'fminer')
+ self.title = "fminer"
+ self.source = "http://github.com/amaunz/libfminer"
+ self.parameters = {
+ "Dataset URI" => { :scope => "mandatory", :value => "dataset_uri" },
+ "Feature URI for dependent variable" => { :scope => "mandatory", :value => "feature_uri" }
+ }
+ end
- def self.create_feature_dataset(params)
- RestClient.post params[:feature_generation_uri], :dataset_uri => params[:dataset_uri], :feature_uri => params[:feature_uri]
- end
- end
+ def self.create_feature_dataset(params)
+ resource = RestClient::Resource.new(params[:feature_generation_uri], :user => @@users[:users].keys[0], :password => @@users[:users].values[0])
+ resource.post :dataset_uri => params[:dataset_uri], :feature_uri => params[:feature_uri]
+ end
+ end
- class Lazar
- include Owl
+ class Lazar
+ include Owl
def initialize
super
@@ -40,26 +41,28 @@ module OpenTox
def self.create_model(params)
LOGGER.debug params
- @uri = RestClient.post File.join(@@config[:services]["opentox-algorithm"], "lazar"), :dataset_uri => params[:dataset_uri], :feature_uri => params[:feature_uri], :feature_generation_uri => File.join(@@config[:services]["opentox-algorithm"], "fminer")
+ #@uri = RestClient.post File.join(@@config[:services]["opentox-algorithm"], "lazar"), :dataset_uri => params[:dataset_uri], :feature_uri => params[:feature_uri], :feature_generation_uri => File.join(@@config[:services]["opentox-algorithm"], "fminer")
+ resource = RestClient::Resource.new(File.join(@@config[:services]["opentox-algorithm"], "lazar"), :user => @@users[:users].keys[0], :password => @@users[:users].values[0])
+ @uri = resource.post :dataset_uri => params[:dataset_uri], :feature_uri => params[:feature_uri], :feature_generation_uri => File.join(@@config[:services]["opentox-algorithm"], "fminer")
end
- end
+ end
- class Similarity
- def self.weighted_tanimoto(fp_a,fp_b,p)
- common_features = fp_a & fp_b
- all_features = fp_a + fp_b
- common_p_sum = 0.0
- if common_features.size > 0
- common_features.each{|f| common_p_sum += p[f]}
- all_p_sum = 0.0
- all_features.each{|f| all_p_sum += p[f]}
- common_p_sum/all_p_sum
- else
- 0.0
- end
- end
- end
+ class Similarity
+ def self.weighted_tanimoto(fp_a,fp_b,p)
+ common_features = fp_a & fp_b
+ all_features = fp_a + fp_b
+ common_p_sum = 0.0
+ if common_features.size > 0
+ common_features.each{|f| common_p_sum += p[f]}
+ all_p_sum = 0.0
+ all_features.each{|f| all_p_sum += p[f]}
+ common_p_sum/all_p_sum
+ else
+ 0.0
+ end
+ end
+ end
- end
+ end
end