summaryrefslogtreecommitdiff
path: root/lib/model.rb
diff options
context:
space:
mode:
authormr <mr@mrautenberg.de>2011-01-10 17:05:07 +0100
committermr <mr@mrautenberg.de>2011-01-10 17:05:07 +0100
commit7327b1632cdaafd2d49d1ba8703a962f3c0e00d6 (patch)
tree833a3562d0e3487b4863bc45cb7a09fba8472843 /lib/model.rb
parent57cab7b2e22b4f07ee7f53afb15d05873abeca6d (diff)
A&A
Diffstat (limited to 'lib/model.rb')
-rw-r--r--lib/model.rb22
1 files changed, 11 insertions, 11 deletions
diff --git a/lib/model.rb b/lib/model.rb
index 953bb6c..32f5604 100644
--- a/lib/model.rb
+++ b/lib/model.rb
@@ -67,8 +67,8 @@ module OpenTox
# Find a lazar model
# @param [String] uri Model URI
# @return [OpenTox::Model::Lazar] lazar model
- def self.find(uri)
- YAML.load RestClientWrapper.get(uri,:accept => 'application/x-yaml')
+ def self.find(uri, subjectid=nil)
+ YAML.load RestClientWrapper.get(uri,{:accept => 'application/x-yaml', :subjectid => subjectid})
end
# Create a new lazar model
@@ -90,8 +90,8 @@ module OpenTox
# Predict a dataset
# @param [String] dataset_uri Dataset URI
# @return [OpenTox::Dataset] Dataset with predictions
- def predict_dataset(dataset_uri)
- @prediction_dataset = Dataset.create
+ def predict_dataset(dataset_uri, subjectid=nil)
+ @prediction_dataset = Dataset.create(CONFIG[:services]["opentox-dataset"], subjectid)
@prediction_dataset.add_metadata({
OT.hasSource => @uri,
DC.creator => @uri,
@@ -101,9 +101,9 @@ module OpenTox
d = Dataset.new(dataset_uri)
d.load_compounds
d.compounds.each do |compound_uri|
- predict(compound_uri,false)
+ predict(compound_uri,false,subjectid)
end
- @prediction_dataset.save
+ @prediction_dataset.save(subjectid)
@prediction_dataset
end
@@ -129,7 +129,7 @@ module OpenTox
} )
end
- return @prediction_dataset if database_activity
+ return @prediction_dataset if database_activity(subjectid)
neighbors
prediction = eval("#{@prediction_algorithm}(@neighbors,{:similarity_algorithm => @similarity_algorithm, :p_values => @p_values})")
@@ -245,11 +245,11 @@ module OpenTox
# Find database activities and store them in @prediction_dataset
# @return [Boolean] true if compound has databasse activities, false if not
- def database_activity
+ def database_activity(subjectid)
if @activities[@compound.uri]
@activities[@compound.uri].each { |act| @prediction_dataset.add @compound.uri, @metadata[OT.dependentVariables], act }
@prediction_dataset.add_metadata(OT.hasSource => @metadata[OT.trainingDataset])
- @prediction_dataset.save
+ @prediction_dataset.save(subjectid)
true
else
false
@@ -262,8 +262,8 @@ module OpenTox
end
# Delete model at model service
- def delete
- RestClientWrapper.delete @uri unless @uri == CONFIG[:services]["opentox-model"]
+ def delete(subjectid)
+ RestClientWrapper.delete(@uri, :subjectid => subjectid) unless @uri == CONFIG[:services]["opentox-model"]
end
end