我知道NaN是“非数字”,那么为什么它会被公式接受而不会抛出任何异常?我在使用斑点数据时理解这种便利,但在数学情况下,为什么它不被视为零?相反,它就像一个黑洞,将其他一切变为NaN。
示例:
x = 5
y = np.NaN
z = x + y
print(z)
nan
答案 0 :(得分:0)
正如名称所示,NaN代表“不是数字”。并且它不等于0.因此所有使用NaN的算术计算都返回NaN。在通常情况下,NaN意味着缺少一些数据。正如@max所提到的,Numpy使用IEEE二进制浮点算术标准(IEEE 754)。您可以在此处找到更多详细信息 - Numpy NA