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')

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

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容