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

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

问题:pandas在处理数据时出现以下错误

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

解决方法:

1、检查数据中是否有缺失值

例如,读取得到的原始数据如下

读取数据

train = pd.read_csv('./data/train.csv/train.csv')

检查数据中是否有缺失值

np.isnan(train).any()

Flase:表示对应特征的特征值中无缺失值

True:表示有缺失值

2、删除有缺失值的行

train.dropna(inplace=True)

然后再看数据中是否有缺失值

也可以根据需要对缺失值进行填充处理:

train.fillna('100')

这下就不会出现错误了,当然这只是数据中存在缺失值的情况,其他情况还没遇到过。

你可能感兴趣的:(ValueError: Input contains NaN, infinity or a value too large for dtype('float64').)