Python sklearn:使用列式变压器链接多个变压器
如何使用ColumnTransformer API将多个转换器应用于单个DataFrame列 例如,我想取立方根,然后标准化DataFrame列中的值:Python sklearn:使用列式变压器链接多个变压器,python,pandas,machine-learning,scikit-learn,Python,Pandas,Machine Learning,Scikit Learn,如何使用ColumnTransformer API将多个转换器应用于单个DataFrame列 例如,我想取立方根,然后标准化DataFrame列中的值: df=pd.DataFrame( np.数组([1,2,3.],[4,5,6.],[7,8,9.]), 列=['a','b','c'] ) 变压器=柱形变压器( [ ('root3_std',StandardScaler()+FunctionTransformer(np.cbrt),'a')从sklearn.Pipeline from skle
df=pd.DataFrame(
np.数组([1,2,3.],[4,5,6.],[7,8,9.]),
列=['a','b','c']
)
变压器=柱形变压器(
[
('root3_std',StandardScaler()+FunctionTransformer(np.cbrt),'a')从sklearn.Pipeline
from sklearn.pipeline import Pipeline
import pandas as pd
import numpy as np
from sklearn.preprocessing import FunctionTransformer, StandardScaler
df = pd.DataFrame(
np.array([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]]),
columns=['a', 'b', 'c']
)
pipe = Pipeline([('function_transformer', FunctionTransformer(np.cbrt)),
('standard_scalar', StandardScaler())])
pipe.fit_transform(df[['a']])
#op
array([[-1.32381804],
[ 0.23106179],
[ 1.09275626]])