python - 数据框包含空值,但过滤后不显示空值。Python - 为机器学习准备数据
问题描述
我对机器学习领域还很陌生,目前我正在尝试使用随机森林来预测回报。
我已经建立了我的模型,但是每次我想预测测试集中的回报时,我都会收到以下错误:ValueError: Input contains NaN, infinity or a value too large for dtype('float32')
所以我试图在我的测试集中寻找 NaN。 测试集示例
当我计算所有空值时,python 告诉我我有 103。但是过滤后根本没有空值吗?
我在这里想念什么?
解决方案
你是什么意思outcome_test[outcome_test['bh1m'] == 0]?
如果你想检查一个元素是否为空,对于你的情况,请执行以下操作:
outcome_test[outcome_test['bh1m'].isnull()]
它将返回其bhm1
特征为的数据点NAN
。对于你的情况是这样的:
bh1m
190 NaN
4354 NaN
... NaN
此外,如果您想更改NaN
值来0
执行此操作:outcome_test['bh1m'].fillna(0, inplace=True)
推荐阅读
- sql - 获取每个项目的最新记录
- python-3.x - 使用python进行图像膨胀
- galera - 无法在 centos 7 上启动 galera 集群
- javascript - 如何在一个元素中修改 CSS 属性,同时选择另一个元素?
- android - 带有 WebView 的 Jetpack 导航无法正常工作
- chef-infra - Chef:从 shell 环境变量中读取属性值
- ruby - 匹配切片字符串
- javascript - pie() 不接受对象数组
- javascript - 如何使用 jsontoxml 的 npm 包将 json 转换为 xml
- node.js - Apache2 和 node.js 应用程序在网络服务器上同时运行