1. 程式人生 > 其它 >如何判斷DataFrame中是否有缺失值None?如何根據值來獲得DataFrame的索引下標?

如何判斷DataFrame中是否有缺失值None?如何根據值來獲得DataFrame的索引下標?

技術標籤:python資料分析

假設有如下資料:

x=["hello","world",None]
xx=pd.DataFrame(x)
xx

資料如下:
在這裡插入圖片描述

可以看到,第2行第1列沒有資料,是空None。可是如果我們的資料有10萬行,那我們就不知道有沒有缺失值了。當有缺失值的時候,99%的後續處理都會不經意報錯,讓你丈二和尚摸不著頭腦,不知道是哪裡報錯了,所以千萬要儘早解決。
判斷方法如下:

xx.isnull()
#或者
xx==None

結果如下:
在這裡插入圖片描述
可以看到isnull()會返回一個和原來xx形狀(shape)一樣的dataframe,裡面的每一個值表示原來對應位置是否為None

。但是,當資料10萬多行的時候,我們仍然可能看不到是否有元素為True,這個時候,和numpy中一樣,可以用any()

xx.isnull().any()

結果如下:
在這裡插入圖片描述
如果想知道是為None元素的下標那怎麼辦呢?可以使用numpy中的方法。
我們先將xx.isnull()儲存下來,轉化成數值型0或1。

b=xx.isnull()
b[b==True]=1
b

即:
在這裡插入圖片描述
然後

#轉成numpy陣列,否則argwhere會報錯。
bb=np.array(b)
np.argwhere(bb==1)

最終得到的精確下標如下:
在這裡插入圖片描述