轉自:http://blog.csdn.net/xiaodongxiexie/article/details/54352889
在處理數據時遇到NAN值的幾率還是比較大的,有的時候需要對數據值是否為nan值做判斷,但是如下處理時會出現一個很詭異的結果:
import numpy as np np.nan == np.nan #此時會輸出為False
- 1
- 2
- 3
- 4
對np.nan進行help查看,輸出如下:
Help on float object: class float(object) | float(x) -> floating point number | | Convert a string or number to a floating point number, if possible. 。。。 |
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
可以得到其屬於float的子類,發現有個方法可以這么用:
np.isnan(np.nan) #這樣就可以檢測np.nan值了
- 1
- 2
或者可以用pandas庫來檢驗:
import pandas as pd pd.isnull(np.nan) #此時一樣輸出為True #同樣的pd.notnull()用來判斷不為nan值
- 1
- 2
- 3
- 4
還可以用python內置math來查看:
In [13]: import math In [14]: import numpy as np In [15]: n = np.nan In [16]: math.isnan(np.nan) Out[16]: True