对于数据帧的不同列,SimpleImputer的使用是否可以分离?

2024-09-28 21:04:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习中级机器学习课程中的Kaggle笔记本“缺失值”。 我正在使用SimpleImputer对数据帧进行预处理。需要插补3列。我以同样的方式将SimpleImputer应用于它们中的每一个。 是否有办法对每一列分别使用不同的策略(平均值、中位数…)

以下是我目前的情况:

imputer = SimpleImputer(strategy = 'median')
imputed_X_train = pd.DataFrame(imputer.fit_transform(X_train))
imputed_X_valid = pd.DataFrame(imputer.transform(X_valid))

Tags: 数据机器dataframe方式transform笔记本train课程
1条回答
网友
1楼 · 发布于 2024-09-28 21:04:46

是的,您应该使用^{}。这将对median_columns_list中的列应用中值插补器,对mean_columns_list中的列应用平均插补器:

from sklearn.compose import ColumnTransformer
from sklearn.impute import SimpleImputer
ct = ColumnTransformer(
    [("median_imp", SimpleImputer(strategy = 'median'), median_columns_list),
     ("mean_imp", SimpleImputer(strategy = 'mean'), mean_columns_list)])

相关问题 更多 >