|
| 1 | +from rmse import RMSE |
| 2 | + |
| 3 | + |
| 4 | +class TestMAE: |
| 5 | + |
| 6 | + def test_new(self): |
| 7 | + rmse = RMSE(actual_vals=[3, 5, 2], predicted_vals=[4, 4, 3]) |
| 8 | + assert isinstance(rmse, RMSE) |
| 9 | + |
| 10 | + def test_calc_errors(self): |
| 11 | + rmse = RMSE(actual_vals=[3, 5, 2], predicted_vals=[4, 4, 3]) |
| 12 | + rmse.calc_errors() |
| 13 | + assert rmse.errors == [-1, 1, -1] |
| 14 | + |
| 15 | + rmse2 = RMSE( |
| 16 | + actual_vals=[34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24], |
| 17 | + predicted_vals=[37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23], |
| 18 | + ) |
| 19 | + rmse2.calc_errors() |
| 20 | + assert rmse2.errors == [-3, -3, -2, 3, 2, -2, 1, -1, -2, -3, 4, 1] |
| 21 | + |
| 22 | + def test_square_errors(self): |
| 23 | + rmse = RMSE(actual_vals=[3, 5, 2], predicted_vals=[4, 4, 3]) |
| 24 | + rmse.calc_errors() |
| 25 | + rmse.square_errors() |
| 26 | + assert len(rmse.errors) == len(rmse.actual_vals) |
| 27 | + assert rmse.errors == [1, 1, 1] |
| 28 | + |
| 29 | + rmse2 = RMSE( |
| 30 | + actual_vals=[34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24], |
| 31 | + predicted_vals=[37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23], |
| 32 | + ) |
| 33 | + rmse2.calc_errors() |
| 34 | + rmse2.square_errors() |
| 35 | + assert len(rmse2.errors) == len(rmse2.actual_vals) |
| 36 | + assert rmse2.errors == [9, 9, 4, 9, 4, 4, 1, 1, 4, 9, 16, 1] |
| 37 | + |
| 38 | + def test_set_mean(self): |
| 39 | + rmse = RMSE(actual_vals=[3, 5, 2], predicted_vals=[4, 4, 3]) |
| 40 | + rmse.calc_errors() |
| 41 | + rmse.square_errors() |
| 42 | + rmse.sum_errors() |
| 43 | + rmse.set_mean() |
| 44 | + assert rmse.square_root == 1 |
| 45 | + |
| 46 | + rmse2 = RMSE( |
| 47 | + actual_vals=[34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24], |
| 48 | + predicted_vals=[37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23], |
| 49 | + ) |
| 50 | + rmse2.calc_errors() |
| 51 | + rmse2.square_errors() |
| 52 | + rmse2.sum_errors() |
| 53 | + rmse2.set_mean() |
| 54 | + assert round(rmse2.square_root, 5) == 5.91667 |
| 55 | + |
| 56 | + def test_get_square_root(self): |
| 57 | + rmse = RMSE(actual_vals=[3, 5, 2], predicted_vals=[4, 4, 3]) |
| 58 | + rmse.calc_errors() |
| 59 | + rmse.square_errors() |
| 60 | + rmse.sum_errors() |
| 61 | + rmse.set_mean() |
| 62 | + result = rmse.get_square_root() |
| 63 | + assert result == 1 |
| 64 | + |
| 65 | + rmse2 = RMSE( |
| 66 | + actual_vals=[34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24], |
| 67 | + predicted_vals=[37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23], |
| 68 | + ) |
| 69 | + rmse2.calc_errors() |
| 70 | + rmse2.square_errors() |
| 71 | + rmse2.sum_errors() |
| 72 | + rmse2.set_mean() |
| 73 | + result2 = rmse2.get_square_root() |
| 74 | + assert round(result2, 5) == 2.43242 |
| 75 | + |
0 commit comments