若有一份數據,簡略如下:
國家 | 啤酒消耗量 | 烈酒消耗量 | 紅酒消耗量 | 總酒精消耗量 | 所在大洲 | |
---|---|---|---|---|---|---|
0 | Afghanistan | 0.0 | 0.0 | 0.0 | 0.0 | AS |
1 | Albania | 89.0 | 132.0 | 54.0 | 4.9 | EU |
現在的需求為:需要將數據中含有缺失值的行進行提取
步驟1:使用isnull()返回是否是缺失值。isnull()會對DataFrame中的每個元素進行缺失值檢查,若為缺失值返回True;不是缺失值返回False;最終返回一個DataFrame.
>>>miss = drink.isnull()
>>>miss.head(3)
國家 | 啤酒消耗量 | 烈酒消耗量 | 紅酒消耗量 | 總酒精消耗量 | 所在大洲 | |
---|---|---|---|---|---|---|
0 | False | False | False | False | False | False |
1 | False | False | False | False | False | False |
2 | False | False | False | False | False | False |
步驟2:找到存在缺失值的行。使用any,並設定axis=1,則當每一行中存在缺失值時就會返回True;若需要找到所有缺失值都為True的行則使用all即可。
>>>miss.any(axis=1)
0 False
1 False
2 False
3 False
4 False
dtype: bool
步驟3:通過步驟1、2即可得到存在缺失值的行索引
>>>drink[miss.any(axis=1)==True].head(3)
國家 | 啤酒消耗量 | 烈酒消耗量 | 紅酒消耗量 | 總酒精消耗量 | 所在大洲 | |
---|---|---|---|---|---|---|
5 | Antigua & Barbuda | 102.0 | 128.0 | 45.0 | 4.9 | NaN |
11 | Bahamas | 122.0 | 176.0 | 51.0 | 6.3 | NaN |
14 | Barbados | 143.0 | 173.0 | 36.0 | 6.3 | NaN |