【问题标题】:AttributeError: 'SimpleImputer' object has no attribute 'mean'AttributeError: 'SimpleImputer' 对象没有属性 'mean'
【发布时间】:2021-03-07 10:41:13
【问题描述】:

我正在尝试对 iris 数据集执行预处理,但在插补步骤中,使用 SimpleImputer 打印每列的平均值时出现此错误。

这里是完整的代码供参考。我在最后一部分得到了错误。

import numpy as np
from sklearn.datasets import load_iris
from sklearn import preprocessing

iris = load_iris()
X = iris.data
iris_normalized = preprocessing.normalize(iris.datadata,norm='l2')
print(iris_normalized.mean(axis=0))

enc = preprocessing.OneHotEncoder()
iris_target_onehot = enc.fit_transform(iris.target.reshape(-1,1))
print(iris_target_onehot.toarray()[[0,50,100]])


X[:50,:] = np.nan
from sklearn.impute import SimpleImputer
iris_imputed = SimpleImputer(missing_values=np.nan,strategy='mean')
iris_imputed.fit_transform(X)
print(iris_imputed.mean(axis=0))


抱歉,我是机器学习的新手。

【问题讨论】:

  • 你读过 imputer 文档吗?

标签: python numpy data-preprocessing


【解决方案1】:

在调用其平均值之前,只需将 fit_transform 保存到 iris_imputed 即可。它会工作

iris_imputed = iris_imputed.fit_transform(iris.data)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-18
    • 2012-12-01
    • 2021-04-19
    • 2021-11-22
    • 1970-01-01
    • 1970-01-01
    • 2018-08-28
    相关资源
    最近更新 更多