首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SimpleImputer ValueError

SimpleImputer ValueError
EN

Stack Overflow用户
提问于 2021-01-25 19:04:03
回答 2查看 460关注 0票数 1

我试图用平均值替换NaNs,但是当我使用fit方法时,我得到了以下错误:

ValueError:输入包含NaN、无穷大或对dtype('float64')来说太大的值。

这是我的密码:

代码语言:javascript
运行
复制
from sklearn.impute import SimpleImputer
imp = SimpleImputer(missing_values = "NaN", strategy = "mean")
imp = imp.fit(df_missing.iloc[:, 1:4])

在你把它标记为转发之前,我知道我可能也会导入numpy,使用np.nan而不是"NaN",但难道没有办法绕过它,坚持熊猫和SimpleImputer吗?我正在学习一门在线课程,我想尽可能地坚持下去;不幸的是,它显然已经过时了,例如,它仍然在运行。

代码语言:javascript
运行
复制
from sklearn.preprocessing import Imputer
EN

回答 2

Stack Overflow用户

发布于 2021-01-27 17:38:01

我不确定我是否清楚地理解了您的问题,但是我假设在您想要计算的列中不是pd.NA or np.nan,而是"NaN"(一个对象类型)。如果是这样的话,就有办法解决这个问题:

代码语言:javascript
运行
复制
df_missing.iloc[:, 1:4] = df_missing.iloc[:, 1:4].replace({"NaN": np.nan})

通过这样做,首先将"NaN"替换为np.nan,然后可以使用SimpleImputer:

代码语言:javascript
运行
复制
imp = SimpleImputer(strategy = "mean")
imp = imp.fit(df_missing.iloc[:, 1:4])

我希望我正确地理解了你的问题,这个解决方案对你有帮助!

票数 0
EN

Stack Overflow用户

发布于 2021-01-25 19:08:00

您可以设置imp对象;

imp = SimpleImputer(missing_values = np.nan, strategy = "mean")

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65890860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档