summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2016-12-12 13:02:29 +0100
committerChristoph Helma <helma@in-silico.ch>2016-12-12 13:02:29 +0100
commit0813b486bc6b107a6970bae7cfb4ca262d7c5697 (patch)
tree864d5e91b761f2be496637f14a7bec7047fb73fd /lib
parent8e4cd2f6654de5b88cdad91eb0c5050be13222f1 (diff)
5 repeated cvs for enm
Diffstat (limited to 'lib')
-rw-r--r--lib/crossvalidation.rb33
-rw-r--r--lib/model.rb4
2 files changed, 2 insertions, 35 deletions
diff --git a/lib/crossvalidation.rb b/lib/crossvalidation.rb
index 5a05955..bcb3ccf 100644
--- a/lib/crossvalidation.rb
+++ b/lib/crossvalidation.rb
@@ -96,39 +96,6 @@ module OpenTox
crossvalidation_ids.collect{|id| CrossValidation.find(id)}
end
- def correlation_plot format: "png"
- #unless correlation_plot_id
- feature = Feature.find(crossvalidations.first.model.prediction_feature)
- title = feature.name
- title += "[#{feature.unit}]" if feature.unit and !feature.unit.blank?
- tmpfile = "/tmp/#{id.to_s}_correlation.#{format}"
- images = []
- crossvalidations.each_with_index do |cv,i|
- x = []
- y = []
- cv.predictions.each do |sid,p|
- x << p["measurements"].median
- y << p["value"]
- end
- R.assign "measurement", x
- R.assign "prediction", y
- R.eval "all = c(measurement,prediction)"
- R.eval "range = c(min(all), max(all))"
- R.eval "image#{i} = qplot(prediction,measurement,main='#{title} #{i}',xlab='Prediction',ylab='Measurement',asp=1,xlim=range, ylim=range)"
- R.eval "image#{i} = image#{i} + geom_abline(intercept=0, slope=1)"
- images << "image#{i}"
-
- R.eval "ggsave(file='/home/ist/lazar/test/tmp#{i}.pdf', plot=image#{i})"
- end
- R.eval "pdf('#{tmpfile}')"
- R.eval "grid.arrange(#{images.join ","},ncol=#{images.size})"
- R.eval "dev.off()"
- file = Mongo::Grid::File.new(File.read(tmpfile), :filename => "#{id.to_s}_correlation_plot.#{format}")
- correlation_plot_id = $gridfs.insert_one(file)
- update(:correlation_plot_id => correlation_plot_id)
- #end
- $gridfs.find_one(_id: correlation_plot_id).data
- end
end
end
diff --git a/lib/model.rb b/lib/model.rb
index 5a1c191..9c4a93f 100644
--- a/lib/model.rb
+++ b/lib/model.rb
@@ -395,7 +395,7 @@ module OpenTox
# find/import training_dataset
training_dataset ||= Dataset.where(:name => "Protein Corona Fingerprinting Predicts the Cellular Interaction of Gold and Silver Nanoparticles").first
- unless training_dataset # try to import from json dump
+ unless training_dataset # try to import
Import::Enanomapper.import
training_dataset = Dataset.where(name: "Protein Corona Fingerprinting Predicts the Cellular Interaction of Gold and Silver Nanoparticles").first
bad_request_error "Cannot import 'Protein Corona Fingerprinting Predicts the Cellular Interaction of Gold and Silver Nanoparticles' dataset" unless training_dataset
@@ -410,7 +410,7 @@ module OpenTox
)
model = LazarRegression.create prediction_feature: prediction_feature, training_dataset: training_dataset, algorithms: algorithms
model_validation[:model_id] = model.id
- repeated_cv = OpenTox::Validation::RepeatedCrossValidation.create model
+ repeated_cv = OpenTox::Validation::RepeatedCrossValidation.create model, 10, 5
model_validation[:repeated_crossvalidation_id] = repeated_cv.id
model_validation.save
model_validation