Closed
Description
As per #9854, I think it would be good if our scalers and similar worked despite missing values. Without this, we are encouraging users to apply naive imputation or to reimplement preprocessing, where they may otherwise have a downstream estimator with native missing value support.
One risk is that NaN need not imply missingness, but for preprocessing the downstream estimator needs to deal with this anyway.
I suggest we start with
- StandardScaler ([MRG] ENH: Ignore NaNs in StandardScaler and scale #11206),
- MinMaxScaler ([MRG+1] NaN handling MinMaxScaler #11005),
- RobustScaler ([MRG] Ignore and pass-through NaNs in RobustScaler and robust_scale #11308),
- MaxAbsScaler ([MRG] Ignore and pass-through NaN values in MaxAbsScaler and maxabs_scale #11011),
- QuantileTransformer ([MRG] EHN handle NaN value in QuantileTransformer #10437),
- PowerTransformer ([MRG] ignore NaNs in PowerTransformer #11306),
- consider whether it is applicable to others.