У меня есть простой sklearn.pipeline.Pipeline
объект, который включает sklearn.impute.SimpleImputer
и sklearn.preprocessing.KBinsDiscretizer
следующим образом:
cont_pipe = Pipeline([('imp', SimpleImputer(strategy='median', add_indicator=False)),
('disc', KBinsDiscretizer(n_bins=4, encode='onehot-dense', strategy='quantile'))])
Это работает, как и ожидалось. Однако, если я установлю add_indicator=True
, дискретизатор будет применен и к новому столбцу. Как я могу избежать этого? Я попытался использовать sklearn.compose.ColumnTransformer
и применить KBinsDiscretizer
к указанному c индексу столбца, но для этого необходимо заранее знать индекс столбца, но это может измениться во время теста.