22

我是熊猫新手。我下载并安装了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 行而不会收到警告。因此,我怀疑类型列NaN的第 6 行中的 afloat64正在触发警告。

4

1 回答 1

33

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

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

import warnings
warnings.simplefilter(action = "ignore", category = RuntimeWarning)
于 2015-07-07T00:34:15.127 回答