ImportError: cannnot import name 'Imputer' from 'sklearn.preprocessing'

给你一囗甜甜゛ 提交于 2020-05-23 04:46:04

问题


Trying to import Imputer from sklearn,

import pandas as pd
dataset = pd.read_csv('Data.csv')
X = dataset.iloc[:, :-1].values
y = dataset.iloc[:, 3].values

#PART WHERE ERROR OCCURS:-
from sklearn.preprocessing import Imputer

Shows "ImportError: cannot import name 'Imputer' from 'sklearn.preprocessing' (/home/codeknight13/anaconda3/lib/python3.7/site-packages/sklearn/preprocessing/__init__.py)"


回答1:


The class is deprecated, use

from sklearn.impute import SimpleImputer
imputer = SimpleImputer(missing_values=np.nan, strategy='mean')



回答2:


After the version scikit-learn SimpleImputer/Imputer has been changed its location from sklearn.preprocessing to package sklearn.impute.

So, kindly use the below line of code to import.

from sklearn.impute import SimpleImputer

Thank you!




回答3:


Try this:

from sklearn.impute import SimpleImputer

imr = SimpleImputer(missing_values=np.nan, strategy='mean')

imr = imr.fit(df.values)

imputed_data = imr.transform(df.values)

print (imputed_data)

Note: New changes are in boldface for your quick reference.



来源:https://stackoverflow.com/questions/59439096/importerror-cannnot-import-name-imputer-from-sklearn-preprocessing

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!