报错:ValueError: Input contains NaN, infinity or a value too large for dtype(‘float32’)
解决:
from sklearn.preprocessing import Imputer
df = Imputer().fit_transform(df)
这个报错主要由于数据当中有大量的缺失值,sklearn.preprocessing.Imputer是填补缺失值的一个重要的方法,它的详细参数包括:
sklearn.preprocessing.Imputer(missing_values=’NaN’, strategy=’mean’, axis=0, verbose=0, copy=True)
参数说明:
missing_values:缺失值,可以为整数或NaN(缺失值numpy.nan用字符串‘NaN’表示),默认为NaN
strategy:替换策略,字符串,默认用均值‘mean’替换
①若为mean时,用特征列的

该博客介绍了在遇到DataFrame中存在NaN、无穷大或数值过大问题时,如何使用scikit-learn的Imputer或SimpleImputer进行缺失值填充。Imputer已过时,现在推荐使用SimpleImputer,它提供了用平均值、中位数或众数替换缺失值的方法。此外,还提到了在处理数据时可能出现的矩阵列不对齐问题及其解决方案。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



