summaryrefslogtreecommitdiff
path: root/report
diff options
context:
space:
mode:
authormguetlein <martin.guetlein@gmail.com>2011-05-24 16:14:37 +0200
committermguetlein <martin.guetlein@gmail.com>2011-05-24 16:14:37 +0200
commit1c2ed2e04d5cbd1842e646e6429bcfdc0b1372dd (patch)
tree8a650344ad68343f43ad2968750ca4df7b670ace /report
parent2317a75d3e91a6a03992a8f19d6559323146a256 (diff)
rewrite: adjust to new prediction dataset format from lazar, read confidence from ambit algorithms
Diffstat (limited to 'report')
-rwxr-xr-xreport/report_content.rb9
-rwxr-xr-xreport/validation_access.rb20
-rwxr-xr-xreport/validation_data.rb5
3 files changed, 22 insertions, 12 deletions
diff --git a/report/report_content.rb b/report/report_content.rb
index d60f700..755147d 100755
--- a/report/report_content.rb
+++ b/report/report_content.rb
@@ -287,12 +287,9 @@ class Reports::ReportContent
section_bar = @xml_report.add_section(@current_section, section_title)
@xml_report.add_paragraph(section_bar, section_text) if section_text
-
- plot_file_name = "bar_plot"+@tmp_file_count.to_s+".png"
- @tmp_file_count += 1
- plot_file_path = add_tmp_file(plot_file_name)
- Reports::PlotFactory.create_bar_plot(plot_file_path, validation_set, title_attribute, value_attributes )
- @xml_report.add_imagefigure(section_bar, image_title, plot_file_name, "PNG", 100, image_caption)
+ plot_bar = add_tmp_file("bar_plot", "svg")
+ Reports::PlotFactory.create_bar_plot(plot_bar[:path], validation_set, title_attribute, value_attributes )
+ @xml_report.add_imagefigure(section_bar, image_title, plot_bar[:name], "PNG", 100, image_caption)
end
private
diff --git a/report/validation_access.rb b/report/validation_access.rb
index ffb7461..d421a0b 100755
--- a/report/validation_access.rb
+++ b/report/validation_access.rb
@@ -100,15 +100,17 @@ class Reports::ValidationDB
def get_predictions(validation, subjectid=nil, task=nil)
Lib::OTPredictions.new( validation.feature_type, validation.test_dataset_uri,
validation.test_target_dataset_uri, validation.prediction_feature, validation.prediction_dataset_uri,
- validation.predicted_variable, subjectid, task)
+ validation.predicted_variable, validation.predicted_confidence, subjectid, task)
end
def get_accept_values( validation, subjectid=nil )
# PENDING So far, one has to load the whole dataset to get the accept_value from ambit
- d = Lib::DatasetCache.find( validation.test_target_dataset_uri, subjectid )
- raise "cannot get test target dataset for accept values, dataset: "+validation.test_target_dataset_uri.to_s unless d
+ test_target_dataset = validation.test_target_dataset_uri
+ test_target_dataset = validation.test_dataset_uri unless test_target_dataset
+ d = Lib::DatasetCache.find( test_target_dataset, subjectid )
+ raise "cannot get test target dataset for accept values, dataset: "+test_target_dataset.to_s unless d
accept_values = d.features[validation.prediction_feature][OT.acceptValue]
- raise "cannot get accept values from dataset "+validation.test_target_dataset_uri.to_s+" for feature "+
+ raise "cannot get accept values from dataset "+test_target_dataset.to_s+" for feature "+
validation.prediction_feature+":\n"+d.features[validation.prediction_feature].to_yaml unless accept_values!=nil
accept_values
end
@@ -122,10 +124,16 @@ class Reports::ValidationDB
raise "cannot derive model depended props for merged validations" if Lib::MergeObjects.merged?(validation)
model = OpenTox::Model::Generic.find(validation.model_uri, subjectid)
raise OpenTox::NotFoundError.new "model not found '"+validation.model_uri+"'" unless model
- model.metadata[OT.predictedVariables]
- #get_model(validation).predictedVariables
+ Lib::FeatureUtil.predicted_variables(model, validation.prediction_dataset_uri, subjectid)[:predicted_variable]
end
+ def predicted_confidence(validation, subjectid=nil)
+ raise "cannot derive model depended props for merged validations" if Lib::MergeObjects.merged?(validation)
+ model = OpenTox::Model::Generic.find(validation.model_uri, subjectid)
+ raise OpenTox::NotFoundError.new "model not found '"+validation.model_uri+"'" unless model
+ Lib::FeatureUtil.predicted_variables(model, validation.prediction_dataset_uri, subjectid)[:predicted_confidence]
+ end
+
# private
# def get_model(validation)
# raise "cannot derive model depended props for merged validations" if Lib::MergeObjects.merged?(validation)
diff --git a/report/validation_data.rb b/report/validation_data.rb
index 0c15dd2..2479977 100755
--- a/report/validation_data.rb
+++ b/report/validation_data.rb
@@ -139,6 +139,11 @@ module Reports
@predicted_variable = Reports.validation_access.predicted_variable(self, @subjectid)
end
+ def predicted_confidence
+ return @predicted_confidence if @predicted_confidence!=nil
+ @predicted_confidence = Reports.validation_access.predicted_confidence(self, @subjectid)
+ end
+
# loads all crossvalidation attributes, of the corresponding cv into this object
def load_cv_attributes
raise "crossvalidation-id not set" unless @crossvalidation_id