【发布时间】:2021-02-10 13:29:38
【问题描述】:
如何使用 ColumnTransformer API 将多个转换器应用于单个 pandas DataFrame 列?
例如,我想取三次根,然后标准化 DataFrame 列中的值:
df = pd.DataFrame(
np.array([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]]),
columns=['a', 'b', 'c']
)
transformer = ColumnTransformer(
[
('root3_std', StandardScaler() + FunctionTransformer(np.cbrt), 'a') <-- pseudocode
],
remainder='passthrough'
)
如果我写
transformer = ColumnTransformer(
[
('root3', FunctionTransformer(np.cbrt), 'a'),
('standardize', StandardScaler(), 'a')
],
remainder='passthrough'
)
我得到两个单独的列,一个具有三次根,另一个具有标准化的原始值。如何一次性应用两个转换器?
【问题讨论】:
-
从
sklearn.pipeline尝试Pipeline
标签: python pandas machine-learning scikit-learn