From ad526737071ff802f688ea2ba03dd347100b3f23 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Sun, 4 Jan 2026 13:11:41 +0100 Subject: [PATCH] refactor: document ExtremaWeightingTransformer zero handling MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- .../user_data/strategies/ExtremaWeightingTransformer.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py b/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py index a2b76ca..93d221e 100644 --- a/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py +++ b/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py @@ -117,7 +117,7 @@ class ExtremaWeightingTransformer(BaseTransform): or not np.isfinite(scale_range) or np.isclose(scale_range, 0.0) ): - return values + return out out[mask] = low + (values[mask] - self._min) / value_range * scale_range elif method == NORMALIZATION_TYPES[1]: # "sigmoid" @@ -186,7 +186,7 @@ class ExtremaWeightingTransformer(BaseTransform): or not np.isfinite(scale_range) or np.isclose(scale_range, 0.0) ): - return values + return out out[mask] = self._min + (values[mask] - low) / scale_range * value_range elif method == NORMALIZATION_TYPES[1]: # "sigmoid" @@ -270,6 +270,7 @@ class ExtremaWeightingTransformer(BaseTransform): ) arr = np.asarray(X, dtype=float) + # Exclude non-finite values and zeros (NEUTRAL extrema label) from transformation mask = np.isfinite(arr) & ~np.isclose(arr, 0.0) standardized = self._standardize(arr, mask) @@ -303,6 +304,7 @@ class ExtremaWeightingTransformer(BaseTransform): ) arr = np.asarray(X, dtype=float) + # Exclude non-finite values and zeros (NEUTRAL extrema label) from transformation mask = np.isfinite(arr) & ~np.isclose(arr, 0.0) degammaized = self._inverse_gamma(arr, mask) -- 2.53.0