多值Scikitlearn插补器

2024-04-18 10:59:06 发布

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

有没有一种方法可以让Scikit learn输入程序查找并替换被认为是“缺失值”的多个值?在

例如,我想做一些

imp = Imputer(missing_values=(7,8,9))

但是根据文档,missing_values参数只接受一个整数:

missing_values : integer or “NaN”, optional (default=”NaN”)

The placeholder for the missing values. All occurrences of missing_values will be imputed. For missing values encoded as np.nan, use the string value “NaN”.


Tags: orthe方法文档程序参数整数integer
1条回答
网友
1楼 · 发布于 2024-04-18 10:59:06

为什么不在原始数据集中手动执行此操作?假设您正在使用pd.DataFrame,您可以执行以下操作:

import numpy as np
import pandas as pd
from sklearn.preprocessing import Imputer

df = pd.DataFrame({'A': [1, 2, 3, 8], 'B': [1, 2, 5, 3]})
df_new = df.replace([1, 2], np.nan)
df_imp = Imputer().fit_transform(df_new)

这将导致df_imp

^{pr2}$

如果您想让它成为管道的一部分,您只需要实现一个具有类似逻辑的自定义转换器。在

相关问题 更多 >