解决:Input contains NaN, infinity or a value too large for dtype('float64')


 源代码

from sklearn.preprocessing import Imputer
data = Imputer(missing_values = 'NaN',strategy='most_frequent')

 出现错误:

cannot import name 'Imputer' from 'sklearn.preprocessing' (G:\Anaconda\lib\site-packages\sklearn\preprocessing\__init__.py)

 原因分析:是因为Imputer已经不在preprocessing模块下,改变为impute下了

 修改代码如下:

from sklearn.impute import SimpleImputer
data = SimpleImputer(missing_values = 'NaN',strategy='most_frequent')

  第二个问题:

Input contains NaN, infinity or a value too large for dtype('float64').

  包含太大的值

修改为:

data = SimpleImputer(missing_values = np.NaN,strategy='most_frequent')

  问题解决!