如何解决AttributeError: 'SimpleImputer' 对象没有属性 'mean'
我正在尝试对 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))
抱歉,我是机器学习的新手。
解决方法
在调用其平均值之前,只需将 fit_transform 保存到 iris_imputed。它会起作用
iris_imputed = iris_imputed.fit_transform(iris.data)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。