From 4daef9e36f4cda908cc5c9ad45da69578f168bf1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Sun, 4 Jan 2026 18:06:10 +0100 Subject: [PATCH] fix(quickadapter): handle missing scaler attributes in ExtremaWeightingTransformer Use getattr with default None value to properly handle cases where scaler attributes don't exist (e.g., when loading pre-existing models), allowing the RuntimeError to be raised with a clear message instead of AttributeError. --- .../user_data/strategies/ExtremaWeightingTransformer.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py b/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py index d1c0d4e..ec02507 100644 --- a/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py +++ b/quickadapter/user_data/strategies/ExtremaWeightingTransformer.py @@ -157,7 +157,7 @@ class ExtremaWeightingTransformer(BaseTransform): f"Invalid standardization {method!r}. " f"Supported: {', '.join(STANDARDIZATION_TYPES)}" ) - scaler = getattr(self, scaler_attr) + scaler = getattr(self, scaler_attr, None) if scaler is None: raise RuntimeError(f"{scaler_attr[1:]} not fitted") return self._apply_scaler(values, mask, scaler, inverse=False) @@ -179,7 +179,7 @@ class ExtremaWeightingTransformer(BaseTransform): f"Invalid normalization {method!r}. " f"Supported: {', '.join(NORMALIZATION_TYPES)}" ) - scaler = getattr(self, scaler_attr) + scaler = getattr(self, scaler_attr, None) if scaler is None: raise RuntimeError(f"{scaler_attr[1:]} not fitted") return self._apply_scaler(values, mask, scaler, inverse=False) @@ -213,7 +213,7 @@ class ExtremaWeightingTransformer(BaseTransform): f"Invalid standardization {method!r}. " f"Supported: {', '.join(STANDARDIZATION_TYPES)}" ) - scaler = getattr(self, scaler_attr) + scaler = getattr(self, scaler_attr, None) if scaler is None: raise RuntimeError(f"{scaler_attr[1:]} not fitted") return self._apply_scaler(values, mask, scaler, inverse=True) @@ -235,7 +235,7 @@ class ExtremaWeightingTransformer(BaseTransform): f"Invalid normalization {method!r}. " f"Supported: {', '.join(NORMALIZATION_TYPES)}" ) - scaler = getattr(self, scaler_attr) + scaler = getattr(self, scaler_attr, None) if scaler is None: raise RuntimeError(f"{scaler_attr[1:]} not fitted") return self._apply_scaler(values, mask, scaler, inverse=True) -- 2.43.0