Python中的NaN及有效性检查
我正在做一个程序,目的是优化一些数值。由于方程的关系,我的数值有时候会变成NaN。
我的问题是,有些输入值是NaN。
我想知道有没有什么方法可以检查这些值是否合理,这样我就可以跳过这些值并重新尝试。
到目前为止,我尝试过检查
a==np.nan, a==nan, b=a a==b
但没有成功。
希望你们能帮我。
谢谢。
2 个回答
7
从Python 2.6开始,你可以使用 import math
来引入数学库,然后用 math.isnan(a)
来检查一个值是否是“不是一个数字”(NaN)。
详细信息可以查看这个链接:http://docs.python.org/library/math.html#math.isnan
30
使用numpy,
import numpy as np
np.isnan(np.nan) # returns True