在熊猫中与0.0000不同?

时间:2015-07-18 10:31:59

标签: python pandas

我有一个数据框,其中一些值为NaN,少数为0.0000。 当我做的时候

pd.isnull(df);

我看到它仅针对NaN返回TRUE,但不针对0.0000返回。

在我的数据集中,我需要忽略所有NaN和0.0000。我可以通过其他方式实现,但我对如何定义null感到困惑。

那么我应该假设0.0000仍然可以是一些无限小的值吗?

2 个答案:

答案 0 :(得分:2)

NULL用于表示缺少数据。在Python中,我们通常使用None来表示这种情况。由于 numeric numpy数组(数据框中的基础数据结构)无法保存None值,因此Pandas会将NaN用作NULL。

因此pandas.isnull() function只会检测NaNNone值。

0.0000是完全有效的数值,它不是缺少数据,并且未被该函数检测到。

换句话说,NULL 意味着与零相同。这意味着根本没有数据

答案 1 :(得分:1)

0.0000只是0,一个完全正确的值。无/ NaN是“非数字”,一些不可计算的值(例如0/0)。这些基本上是不同的概念。 Python NaN 不是C ++ Null (本质上是0)。 NaN更像是一个通知,在计算这个值时会发生某种异常。