ValueError: Input contains NaN,
2018-09-12 本文已影响0人
肥了个大西瓜
| 转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')
这下就不会出现错误了,当然这只是数据中存在缺失值的情况,其他情况还没遇到过。