【问题标题】:Pandas error - invalid value encounteredPandas 错误 - 遇到无效值
【发布时间】:2015-08-11 17:23:12
【问题描述】:

我是熊猫新手。我下载并安装了Anaconda。然后我尝试通过 Spyder 应用程序运行以下代码:

import pandas as pd
import numpy as np

train = pd.read_csv('/Users/Ben/Documents/Kaggle/Titanic/train.csv')
train

虽然这会按我的预期打印数据帧,但它也会显示这些错误

//anaconda/lib/python3.4/site-packages/pandas/core/format.py:1969: RuntimeWarning: invalid value encountered in greater
  has_large_values = (abs_vals > 1e8).any()
//anaconda/lib/python3.4/site-packages/pandas/core/format.py:1970: RuntimeWarning: invalid value encountered in less
  has_small_values = ((abs_vals < 10 ** (-self.digits)) &
//anaconda/lib/python3.4/site-packages/pandas/core/format.py:1971: RuntimeWarning: invalid value encountered in greater
  (abs_vals > 0)).any()

为什么会出现这些错误?

编辑:我刚刚在IPython 笔记本中测试了上面的代码,它可以正常工作。那么,我的Spyder 安装有问题吗?任何帮助将不胜感激。

EDIT2:经过一些测试,我可以读取 CSV 的前 5 行而不会收到警告。所以,我怀疑float64 类型列的第 6 行中的 NaN 会触发警告。

【问题讨论】:

  • 以前没见过这个但是我用的是WinPython,你能不能试试重新安装anaconda
  • @EdChum 重新安装了 Anaconda,但我仍然收到此错误
  • 有兴趣的可以下载train.csv数据集here
  • 在 github here 上有一个关于这个的讨论。您可以通过 pd.set_option('display.float_format', lambda x:'%f'%x) 解决此问题
  • 能否提供原始数据集的样本?或者链接到它?

标签: python pandas anaconda python-3.4 kaggle


【解决方案1】:

我有同样的错误,并确定这是一个错误。这似乎是由 Spyder 的 DataFrame 中存在 NaN 值引起的。我已经卸载并重新安装了所有软件包,但没有任何影响。 NaN 值受支持并且在 DataFrame 中完全有效,尤其是在它们具有 DateTime 索引的情况下。

最后,我决定按如下方式抑制此警告。

import warnings
warnings.simplefilter(action = "ignore", category = RuntimeWarning)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-09
    • 2020-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-25
    • 2016-04-15
    • 1970-01-01
    相关资源
    最近更新 更多