diff options
author | mguetlein <martin.guetlein@gmail.com> | 2012-11-20 12:14:13 +0100 |
---|---|---|
committer | mguetlein <martin.guetlein@gmail.com> | 2012-11-20 12:14:13 +0100 |
commit | 78201e10a1f4695c65f431d07512188363f897fb (patch) | |
tree | 6f1759b3cbdc164c045001307fb7fa8bafbd878e /report | |
parent | 9bfa9a593d03375d75663abe3aa9ef33b0163702 (diff) |
adjust validation to dataset changes, remove test_target_dataset concept (never worked for multiple compound occurences with different values), fix splitting (multiple compound occurences are now split in different sets as well)oldarch
Diffstat (limited to 'report')
-rw-r--r-- | report/plot_factory.rb | 9 | ||||
-rwxr-xr-x | report/validation_access.rb | 15 |
2 files changed, 11 insertions, 13 deletions
diff --git a/report/plot_factory.rb b/report/plot_factory.rb index 6e90dbc..ad73170 100644 --- a/report/plot_factory.rb +++ b/report/plot_factory.rb @@ -106,14 +106,13 @@ module Reports train = [] test = [] validation_set.validations.each do |v| - [[v.test_dataset_uri, test, v.test_target_dataset_uri], - [v.training_dataset_uri, train, v.training_dataset_uri]].each do |uri,array,uri2| + [[v.test_dataset_uri, test], + [v.training_dataset_uri, train]].each do |uri,array| d = Lib::DatasetCache.find(uri, validation_set.validations[0].subjectid) - d2 = Lib::DatasetCache.find((uri2 ? uri2 : uri), validation_set.validations[0].subjectid) d.compounds.each do |c| - d2.data_entries[c][v.prediction_feature].each do |val| + d.data_entries[c][v.prediction_feature].each do |val| array << val - end if d2.data_entries[c] and d2.data_entries[c][v.prediction_feature] + end if d.data_entries[c] and d.data_entries[c][v.prediction_feature] end end end diff --git a/report/validation_access.rb b/report/validation_access.rb index e2a3978..784f928 100755 --- a/report/validation_access.rb +++ b/report/validation_access.rb @@ -187,8 +187,8 @@ class Reports::ValidationDB def get_predictions(validation, filter_params, subjectid, task) # we need compound info, cannot reuse stored prediction data data = Lib::PredictionData.create( validation.feature_type, validation.test_dataset_uri, - validation.test_target_dataset_uri, validation.prediction_feature, validation.prediction_dataset_uri, - validation.predicted_variable, validation.predicted_confidence, subjectid, OpenTox::SubTask.create(task, 0, 80 ) ) + validation.prediction_feature, validation.prediction_dataset_uri, validation.predicted_variable, + validation.predicted_confidence, subjectid, OpenTox::SubTask.create(task, 0, 80 ) ) data = Lib::PredictionData.filter_data( data.data, data.compounds, filter_params[:min_confidence], filter_params[:min_num_predictions], filter_params[:max_num_predictions] ) if filter_params!=nil task.progress(100) if task @@ -197,14 +197,13 @@ class Reports::ValidationDB def get_accept_values( validation, subjectid=nil ) # PENDING So far, one has to load the whole dataset to get the accept_value from ambit - test_target_datasets = validation.test_target_dataset_uri - test_target_datasets = validation.test_dataset_uri unless test_target_datasets + test_datasets = validation.test_dataset_uri res = nil - test_target_datasets.split(";").each do |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 + test_datasets.split(";").each do |test_dataset| + d = Lib::DatasetCache.find( test_dataset, subjectid ) + raise "cannot get test target dataset for accept values, dataset: "+test_dataset.to_s unless d accept_values = d.accept_values(validation.prediction_feature) - raise "cannot get accept values from dataset "+test_target_dataset.to_s+" for feature "+ + raise "cannot get accept values from dataset "+test_dataset.to_s+" for feature "+ validation.prediction_feature+":\n"+d.features[validation.prediction_feature].to_yaml unless accept_values!=nil raise "different accept values" if res && res!=accept_values res = accept_values |