當前位置:首頁 » 編程語言 » python判斷是否為nan

python判斷是否為nan

發布時間: 2023-11-03 04:02:42

A. python中怎麼判斷一個浮點數是NaN

>>> a == 'NaN'
False

>>> a == nan
False

>>> a == float('NaN')
False
>>> isNaN(a)
Traceback (most recent call last):
File "<stdin>", line 1, in <mole>
NameError: name 'isNaN' is not defined
以上幾種方法,都可以試一下

B. 資料庫中的空值與NULL的區別以及python中的NaN和None

  • NULL表示:不可用、未賦值、不知道、不適用,它既不是0也不是空格。記住:一個數值與NULL進行四則運算,其結果是NULL

  • 空值和NULL的區別在於,在做count計算的時候:count(field_name),field_name的值為空值也會被計算在裡面(這一行統計有效),而NULL不會

  • python有兩種方式獲取數據:
    1. 一種是把數據從MySQL中導出到txt或者csv,然後本地讀取;
    2. 另一種是python直接鏈接資料庫,讀取數據;

  • 第一種把數據從MYSQL導出後,python讀取時,空值和NULL在文件中都為NULL;Python讀取之後為NaN

  • 第二種鏈接資料庫後,python能讀取表結構,資料庫的NULL對應列表中的None以及pandas中的NaN(如果欄位類型是時間,則為NaT)。而資料庫中的空字元,則被識別為空字元。

C. python 判斷是否包含np.nan

1.使用series.unique() 發現其長度為18
而使用describe()中的count 或者dingdan_df['driver_phone'].value_counts()時為17個value,原因是後兩者僅統計非空的值。

查找:
unique()得到的為一個ndarray,從而無法直接用list中的if np.nan in test1:來判斷。

list求並交差:
http://blog.chinaunix.net/uid-200142-id-3992553.html

2.dictionary轉DataFrame
dict.items()為一個dict_items類型的對象,需要轉為list再傳入,同時指定列名
gongdan_users=pd.DataFrame(list(gongdan_dic.items()),columns=['driver_phone','counts'])

D. 認識python中的inf和nan

認識python中的inf和nan

python中的正無窮或負無窮,使用float("inf")或float("-inf")來表示。
這里有點特殊,寫成:float("inf"),float("INF")或者float('Inf')都是可以的。
當涉及 > 和 < 比較時,所有數都比無窮小float("-inf")大,所有數都比無窮大float("inf")小。
相等比較時,float("+inf")與float("+inf")、float("inf")三者相等。即:

同樣地,float("-inf") == float("-inf") 返回也是True。

簡單的加,減,乘操作,還是會返回無窮。

特別地,0 * float('inf') 結果為:nan
float('inf') / float('inf') 結果為:nan
float('inf') - float('inf') 結果為:nan
float('-inf') - float('-inf') 結果也為:nan

nan代表Not A Number(不是一個數),它並不等於0
因為nan不是一個數,所以相關計算都無法得到數字。
所有涉及nan的操作,返回的都是nan。

結果都是:nan
比較操作時,返回的都是False

特別注意兩個float('nan')並不相等!

python中可以用math.isinf()與math.isnan()來判斷數據是否為inf或nan。

numpy中也有相類似的方法可用來判斷數據。

動手測試題:
0 / float('inf') == 0 / float('-inf') 結果是True 還是False?

參考資料:

Python 關於正負無窮float(『inf』)的一些用法
https://blog.csdn.net/shennongzhaizhu/article/details/51997887

Stackoverflow.com上的問答:What is inf and nan?
https://stackoverflow.com/questions/17628613/what-is-inf-and-nan

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:705
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:968
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:676
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:828
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:737
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1076
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:308
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:188
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:875
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:829