2011-05-16 79 views
6

我正在做一個程序,我優化了一些值。由於方程式,我的值不時是我的數值NaNNaN在蟒蛇和有效性檢查

我的問題,一些條目是NaN。

我想知道是否有測試來檢查其邏輯有效性,以便我可以跳過這些值並重試。

到目前爲止,我已經試過檢查

a==np.nan, a==nan, b=a a==b 

無濟於事。

我希望你能幫助我

感謝

+5

可能重複[如何在python檢查喃?](http://stackoverflow.com/questions/944700/how-to-check -for-nan-in-python) – 2011-05-16 11:40:55

回答

21

使用numpy的,

import numpy as np 
np.isnan(np.nan) # returns True 
6

因爲Python 2.6,你要import math和使用math.isnan(a)

http://docs.python.org/library/math.html#math.isnan

+0

爲什麼我們想用'math'而不是'numpy'? – dmn 2011-10-11 15:20:47

+0

其實,我可能已經找到[答案](http://stackoverflow.com/questions/1322380/gotchas-where-numpy-differs-from-straight-python)我自己的問題:) – dmn 2011-10-11 15:29:04