admin管理员组

文章数量:1530291

创建一个imputer实例, 指定你要用属性中的中位数替代该属性的缺失值,再使用fit()方法将imputer实例适配到训练集,实现代码如下:

from sklearn.impute import SimpleImputer
imputer = SimpleImputer(strategy='median')

imputer.fit(housing)

运行结果如下:

ValueError: Cannot use median strategy with non-numeric data:
could not convert string to float: '<1H OCEAN

主要原因是由于,在数据集“housing”中的属性“ocean_proximity”的数据类型为字符串,而imputer()这个方法只能用于浮点型数据,因此需要将该属性值先去掉,采用的方法为drop()

from sklearn.impute import SimpleImputer
imputer = SimpleImputer(strategy='median')
housing_num=housing.drop('ocean_proximity',axis=1)
imputer.fit(housing_num)
SimpleImputer(strategy='median')

本文标签: numericStrategymedianDatafloat