Pandas错误 - 遇到无效值

时间:2015-05-29 00:59:50

标签: python pandas anaconda python-3.4 kaggle

我是熊猫的新手。我下载并安装了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行中的float64正在触发警告。

1 个答案:

答案 0 :(得分:29)

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

最后,我已经决定如下压制此警告。

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