summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorhelma@in-silico.ch <helma@in-silico.ch>2018-10-29 17:58:09 +0100
committerhelma@in-silico.ch <helma@in-silico.ch>2018-10-29 17:58:09 +0100
commit5e9a08c0b534fa96179fb5c81a9b4193e7b0aad8 (patch)
treea9d97dc520f51b5bca61b5f0122a1f86817e1ea8 /test
parent15f4ad23eb918a91d52779887ccfb51bc6547f1b (diff)
dataset folds fixed
Diffstat (limited to 'test')
-rw-r--r--test/classification-model.rb1
-rw-r--r--test/dataset.rb4
-rw-r--r--test/regression-model.rb18
3 files changed, 23 insertions, 0 deletions
diff --git a/test/classification-model.rb b/test/classification-model.rb
index 7a2a64f..bfb64db 100644
--- a/test/classification-model.rb
+++ b/test/classification-model.rb
@@ -84,6 +84,7 @@ class LazarClassificationTest < MiniTest::Test
training_dataset = Dataset.from_csv_file File.join(DATA_DIR,"hamster_carcinogenicity.csv")
model = Model::Lazar.create training_dataset: training_dataset
result = model.predict training_dataset
+ puts result.to_csv
assert_kind_of Dataset, result
assert 3, result.features.size
assert 8, result.compounds.size
diff --git a/test/dataset.rb b/test/dataset.rb
index 0beea2d..c197648 100644
--- a/test/dataset.rb
+++ b/test/dataset.rb
@@ -172,6 +172,10 @@ class DatasetTest < MiniTest::Test
fold.each do |d|
assert_operator d.compounds.size, :>=, d.compounds.uniq.size
end
+ refute_empty fold[0].compounds
+ refute_empty fold[1].compounds
+ refute_empty fold[0].data_entries
+ refute_empty fold[1].data_entries
assert_operator fold[0].compounds.size, :>=, fold[1].compounds.size
assert_equal dataset.substances.size, fold.first.substances.size + fold.last.substances.size
assert_empty (fold.first.substances & fold.last.substances)
diff --git a/test/regression-model.rb b/test/regression-model.rb
index 5903e88..0104741 100644
--- a/test/regression-model.rb
+++ b/test/regression-model.rb
@@ -168,4 +168,22 @@ class LazarRegressionTest < MiniTest::Test
assert_equal 0.83, prediction[:value].round(2)
end
+ def test_dataset_prediction
+ training_dataset = Dataset.from_csv_file File.join(DATA_DIR,"EPAFHM.medi_log10.csv")
+ model = Model::Lazar.create training_dataset: training_dataset
+ result = model.predict training_dataset
+ assert_kind_of Dataset, result
+ puts result.to_csv
+ puts result.features
+ # TODO
+ # check prediction
+ # check prediction_interval
+ # check warnings/applicability domain
+ assert 3, result.features.size
+ assert 8, result.compounds.size
+ assert_equal ["true"], result.values(result.compounds.first, result.features[1])
+ assert_equal [0.65], result.values(result.compounds.first, result.features[2])
+ assert_equal [0], result.values(result.compounds.first, result.features[2]) # classification returns nil, check if
+ end
+
end