Scikit-learn - 输入特定列中的值

Glo*_*ian 3 dataframe pandas na scikit-learn imputation

是否可以估算特定列的值?

例如,如果我有 3 列:

  • A(分类):不包含任何缺失值
  • B(数字):不包含任何缺失值
  • C : 假设该列包含数字数据并且其中一些数据丢失。我只想在此列中进行插补。

mca*_*ard 9

您可以使用numpy.ravel

from sklearn.preprocessing import Imputer
imp = Imputer(missing_values=0, strategy="mean", axis=0)
df["C"] = imp.fit_transform(df[["C"]]).ravel()
Run Code Online (Sandbox Code Playgroud)

  • 另外,对于未来的查看者,请使用 SimpleImputer,因为 Imputer 类已被弃用。检查https://github.com/scikit-learn/scikit-learn/blob/8d7e849428a4edd16c3e2a7dc8a088f108986a17/sklearn/preprocessing/imputation.py#L64 (2认同)