From 70a9dbe63faebfce87e2d19a738a40d104eed5a9 Mon Sep 17 00:00:00 2001 From: Eric Schles Date: Thu, 12 Aug 2021 15:57:36 -0400 Subject: [PATCH 1/2] adding a new test for reasons --- tests/test_regression_tests.py | 46 ++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/tests/test_regression_tests.py b/tests/test_regression_tests.py index 19a8132..f0faffb 100644 --- a/tests/test_regression_tests.py +++ b/tests/test_regression_tests.py @@ -28,6 +28,31 @@ def generate_regression_data_and_models(): reg2.fit(X, df[target_name]) return df, column_names, target_name, reg1, reg2 +def generate_regression_data_and_models_with_large_data(): + df = pd.DataFrame() + for _ in range(1000): + a = np.random.normal(0, 1) + b = np.random.normal(0, 3) + c = np.random.normal(12, 4) + d = np.random.normal(1500, 27000) + target = (a + b + c) * d + df = df.append({ + "A": a, + "B": b, + "C": c, + "D": d, + "target": target + }, ignore_index=True) + + reg1 = tree.DecisionTreeRegressor() + reg2 = ensemble.RandomForestRegressor() + column_names = ["A", "B", "C", "D"] + target_name = "target" + X = df[column_names] + reg1.fit(X, df[target_name]) + reg2.fit(X, df[target_name]) + return df, column_names, target_name, reg1, reg2 + def test_regression_basic(): df, column_names, target_name, reg, _ = generate_regression_data_and_models() test_suite = regression_tests.RegressionTests(reg, @@ -49,6 +74,27 @@ def test_regression_basic(): except: assert False +def test_regression_basic_with_large_data(): + df, column_names, target_name, reg, _ = generate_regression_data_and_models_with_large_data() + test_suite = regression_tests.RegressionTests(reg, + df, + target_name, + column_names) + try: + mse_upper_boundary = 10000 + mae_upper_boundary = 10000 + tse_upper_boundary = 10000 + tae_upper_boundary = 10000 + test_suite.upper_bound_regression_testing( + mse_upper_boundary, + mae_upper_boundary, + tse_upper_boundary, + tae_upper_boundary + ) + assert True + except: + assert False + def test_cross_val_mse_anomaly_detection(): df, column_names, target_name, reg, _ = generate_regression_data_and_models() test_suite = regression_tests.RegressionTests(reg, From 611ad619e8598f124583d8bc0e53c9bacdd66e68 Mon Sep 17 00:00:00 2001 From: Eric Schles Date: Thu, 4 Nov 2021 15:50:39 -0400 Subject: [PATCH 2/2] adding e --- tests/test_regression_tests.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/test_regression_tests.py b/tests/test_regression_tests.py index f0faffb..cd8e760 100644 --- a/tests/test_regression_tests.py +++ b/tests/test_regression_tests.py @@ -35,18 +35,20 @@ def generate_regression_data_and_models_with_large_data(): b = np.random.normal(0, 3) c = np.random.normal(12, 4) d = np.random.normal(1500, 27000) - target = (a + b + c) * d + e = np.random.normal(1, 2) + target = ((a + b + c) * d)/e df = df.append({ "A": a, "B": b, "C": c, "D": d, + "E": e, "target": target }, ignore_index=True) reg1 = tree.DecisionTreeRegressor() reg2 = ensemble.RandomForestRegressor() - column_names = ["A", "B", "C", "D"] + column_names = ["A", "B", "C", "D", "E"] target_name = "target" X = df[column_names] reg1.fit(X, df[target_name])