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

摘自 Joy-com
https://blog.csdn.net/u013764485/article/details/53012978

问题: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’)

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

猜你喜欢

转载自blog.csdn.net/csiao_Bing/article/details/85049724