summaryrefslogtreecommitdiff
path: root/test/lazar-physchem-short.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/lazar-physchem-short.rb')
-rw-r--r--test/lazar-physchem-short.rb34
1 files changed, 18 insertions, 16 deletions
diff --git a/test/lazar-physchem-short.rb b/test/lazar-physchem-short.rb
index e74a4b9..59d8112 100644
--- a/test/lazar-physchem-short.rb
+++ b/test/lazar-physchem-short.rb
@@ -2,27 +2,29 @@ require_relative "setup.rb"
class LazarPhyschemDescriptorTest < MiniTest::Test
def test_epafhm
- skip "Physchem Regression not yet implemented."
- # check available descriptors
- @descriptors = OpenTox::Algorithm::Descriptor::DESCRIPTORS.keys
- assert_equal 111,@descriptors.size,"wrong number of physchem descriptors"
- @descriptor_values = OpenTox::Algorithm::Descriptor::DESCRIPTOR_VALUES
- # select descriptors for test
- @num_features_offset = 0
- @descriptors.keep_if{|x| x=~/^Openbabel\./}
- @descriptors.delete("Openbabel.L5") # TODO Openbabel.L5 does not work, investigate!!!
- puts "Descriptors: #{@descriptors}"
+ @descriptors = OpenTox::Algorithm::Descriptor::OBDESCRIPTORS.keys
+ refute_empty @descriptors
# UPLOAD DATA
training_dataset = OpenTox::Dataset.from_csv_file File.join(DATA_DIR,"EPAFHM.medi.csv")
- puts "Dataset: "+training_dataset.id
-# feature_dataset = Algorithm::Descriptor.physchem training_dataset, @descriptors
- model = Model::LazarRegression.create training_dataset#, feature_dataset
- #p model
+ feature_dataset = Algorithm::Descriptor.physchem training_dataset, @descriptors
+ scaled_feature_dataset = feature_dataset.scale
+ model = Model::LazarRegression.create training_dataset
+ model.neighbor_algorithm = "physchem_neighbors"
+ model.neighbor_algorithm_parameters = {
+ :feature_calculation_algorithm => "OpenTox::Algorithm::Descriptor.physchem",
+ :descriptors => @descriptors,
+ :feature_dataset_id => scaled_feature_dataset.id,
+ :min_sim => 0.3
+ }
+ model.save
compound = Compound.from_smiles "CC(C)(C)CN"
prediction = model.predict compound
- p prediction
-
+ refute_nil prediction[:value]
+ refute_nil prediction[:confidence]
+ prediction[:neighbors].each do |line|
+ assert_operator line[1], :>, 0.3
+ end
end
end