我有一个名为
df
的pandas DataFrame。我想使用不同的编码器对df
的连续和分类特征进行编码。使用make_column_transformer
非常方便,但是下面显示的代码在使用LabelEncoder()
时失败,但是在使用OneHotEncoder(handle_unknown='ignore')
时可以正常工作。错误消息如下:
TypeError: fit_transform()需要2个位置参数,但是给定了3个
我不清楚如何解决这个问题。
代码如下:
from sklearn.compose import make_column_transformer
from sklearn.preprocessing import RobustScaler, OneHotEncoder, LabelEncoder
continuous_features = ['COL1','COL2']
categorical_features = ['COL3','COL4']
column_trans = make_column_transformer(
(categorical_features,LabelEncoder()),
(continuous_features, RobustScaler()))
X_enc = column_trans.fit_transform(df)
fit_transform()
步骤。 - Bill Chen