summaryrefslogtreecommitdiff
path: root/test/regression.rb
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2016-05-09 15:51:50 +0200
committerChristoph Helma <helma@in-silico.ch>2016-05-09 15:51:50 +0200
commita18218bd1586edd8097729d242abb8947d6988df (patch)
treee94ac3bffb25751ed7e11a626ddde8b96f1de816 /test/regression.rb
parente2e7045c3efeb59dd650b78772009281e7fa56a0 (diff)
parent0b416e3b55a9256915a2427afe5bc112bcabc203 (diff)
development branch mergedv0.9.3
Diffstat (limited to 'test/regression.rb')
-rw-r--r--test/regression.rb43
1 files changed, 43 insertions, 0 deletions
diff --git a/test/regression.rb b/test/regression.rb
new file mode 100644
index 0000000..ad460b5
--- /dev/null
+++ b/test/regression.rb
@@ -0,0 +1,43 @@
+require_relative "setup.rb"
+
+class LazarRegressionTest < MiniTest::Test
+
+ def test_weighted_average
+ training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi.csv"
+ model = Model::LazarRegression.create training_dataset, {:neighbor_algorithm_parameters => {:min_sim => 0}, :prediction_algorithm => "OpenTox::Algorithm::Regression.local_weighted_average"}
+ compound = Compound.from_smiles "CC(C)(C)CN"
+ prediction = model.predict compound
+ assert_equal 7.2, prediction[:value].round(1)
+ assert_equal 88, prediction[:neighbors].size
+ end
+
+ def test_mpd_fingerprints
+ training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi.csv"
+ model = Model::LazarRegression.create training_dataset
+ model.neighbor_algorithm_parameters[:type] = "MP2D"
+ compound = Compound.from_smiles "CCCSCCSCC"
+ prediction = model.predict compound
+ assert_equal 0.04, prediction[:value].round(2)
+ assert_equal 3, prediction[:neighbors].size
+ end
+
+ def test_local_fingerprint_regression
+ training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi.csv"
+ model = Model::LazarRegression.create(training_dataset, :prediction_algorithm => "OpenTox::Algorithm::Regression.local_fingerprint_regression")
+ compound = Compound.from_smiles "NC(=O)OCCC"
+ prediction = model.predict compound
+ p prediction
+ refute_nil prediction[:value]
+ refute_nil prediction[:prediction_interval]
+ refute_empty prediction[:neighbors]
+ end
+
+ def test_local_physchem_regression
+ training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi.csv"
+ model = Model::LazarRegression.create(training_dataset, :prediction_algorithm => "OpenTox::Algorithm::Regression.local_physchem_regression")
+ compound = Compound.from_smiles "NC(=O)OCCC"
+ prediction = model.predict compound
+ refute_nil prediction[:value]
+ end
+
+end