提问人:Brandon-Perry 提问时间:11/17/2023 最后编辑:Ro.oTBrandon-Perry 更新时间:11/17/2023 访问量:23
SciKit Learn ColumnTransformer - 防止前缀?(1.0.2 节)
SciKit Learn ColumnTransformer - Prevent Prefix? (v. 1.0.2)
问:
当我使用 sklearn.compose.ColumnTransformer 并尝试将结果制作成 Pandas DataFrame 时,我注意到它会自动在列名后附加一个前缀。
前任:
transformer = ColumnTransformer(
transformers=[
('onehot', OneHotEncoder(), ['Color', 'Size'])
],
remainder='passthrough'
)
transformed = transformer.fit_transform(df)
transformed_df = pd.DataFrame(transformed, columns=transformer.get_feature_names_out())
print(transformed_df.columns)
>> onehot__color_red, onehot__color_blue, onehot__size_small, onehot__size_big, remainder__cost
有没有办法防止这种情况发生?或者它应该这样做有具体的原因吗?
答:
0赞
some3128
11/17/2023
#1
默认情况下具有 .将其设置为禁用前缀行为。ColumnTransformer
verbose_feature_names_out=True
False
verbose_feature_names_out (bool),default=True 如果 ,将为所有功能名称添加前缀 替换为生成该特征的转换器的名称。如果 ,则不会在前缀 any 功能名称,如果功能名称不唯一,则将出错。
True
ColumnTransformer.get_feature_names_out
False
ColumnTransformer.get_feature_names_out
评论