Skip to content

Commit

Permalink
add more integration tests
Browse files Browse the repository at this point in the history
  • Loading branch information
rwedge committed Jan 22, 2025
1 parent c7414ec commit d5bc2ed
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions tests/integration/transformers/test_numerical.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
ClusterBasedNormalizer,
FloatFormatter,
GaussianNormalizer,
LogScaler,
)


Expand Down Expand Up @@ -560,3 +561,58 @@ def test_out_of_bounds_reverse_transform(self):

# Assert
assert isinstance(reverse, pd.DataFrame)


class TestLogScaler:
def test_learn_rounding(self):
# Setup
data = pd.DataFrame({'test': [1.0, np.nan, 1.5]})
transformer = LogScaler(
missing_value_generation=None,
missing_value_replacement='mean',
learn_rounding_scheme=True,
)
expected = pd.DataFrame({'test': [1.0, 1.2, 1.5]})

# Run
transformer.fit(data, 'test')
transformed = transformer.transform(data)
reversed = transformer.reverse_transform(transformed)

# Assert
np.testing.assert_array_equal(reversed, expected)

def test_missing_value_generation_from_column(self):
# Setup
data = pd.DataFrame({'test': [1.0, np.nan, 1.5]})
transformer = LogScaler(
missing_value_generation='from_column',
missing_value_replacement='mean',
)

# Run
transformer.fit(data, 'test')
transformed = transformer.transform(data)
reversed = transformer.reverse_transform(transformed)

# Assert
np.testing.assert_array_equal(reversed, data)

def test_missing_value_generation_random(self):
# Setup
data = pd.DataFrame({'test': [1.0, np.nan, 1.5, 1.5]})
transformer = LogScaler(
missing_value_generation='random',
missing_value_replacement='mode',
invert=True,
constant=3,
)
expected = pd.DataFrame({'test': [np.nan, 1.5, 1.5, 1.5]})

# Run
transformer.fit(data, 'test')
transformed = transformer.transform(data)
reversed = transformer.reverse_transform(transformed)

# Assert
np.testing.assert_array_equal(reversed, expected)

0 comments on commit d5bc2ed

Please sign in to comment.