1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
require 'rubygems'
require 'opentox-ruby'
require 'test/unit'
class Float
def round_to(x)
(self * 10**x).round.to_f / 10**x
end
end
class ValidationTest < Test::Unit::TestCase
=begin
=end
def test_crossvalidation
=begin
=end
puts "creating model ..."
model_uri = OpenTox::Algorithm::Lazar.new.run({:dataset_uri => @@classification_training_dataset.uri, :subjectid => @@subjectid}).to_s
lazar = OpenTox::Model::Lazar.find model_uri, @@subjectid
puts @@classification_training_dataset.features.to_yaml
params = {
:algorithm_uri => File.join(CONFIG[:services]["opentox-algorithm"],"lazar"),
:dataset_uri => lazar.parameter("dataset_uri"),
#:dataset_uri => @@classification_training_dataset.uri,
:subjectid => @@subjectid,
#:prediction_feature => @@classification_training_dataset.features.keys.first,
#:algorithm_params => "feature_generation_uri=#{File.join(CONFIG[:services]["opentox-algorithm"],"bbrc")}"
:prediction_feature => lazar.parameter("prediction_feature"),
:algorithm_params => "feature_generation_uri=#{lazar.parameter("feature_generation_uri")}"
}
puts params.to_yaml
cv = OpenTox::Validation.create_crossvalidation(params)
puts cv.uri
#@@subjectid = OpenTox::Authorization.authenticate(TEST_USER,TEST_PW)
cv = OpenTox::Validation.new "http://opentox.informatik.uni-freiburg.de/validation/crossvalidation/6"
puts cv.uri
#puts cv.create_report(@@subjectid)
#puts cv.create_qmrf_report(@@subjectid)
#v = YAML.load OpenTox::RestClientWrapper.get(cv.uri,{:accept => "application/x-yaml", :subjectid => @@subjectid}).to_s
v = YAML.load OpenTox::RestClientWrapper.get(File.join(cv.uri, 'statistics'),{:accept => "application/x-yaml", :subjectid => @@subjectid}).to_s
puts v.to_yaml
#puts cv.summary("classification",@@subjectid)
end
end
|