Pandas庫中isnull函數(shù)的實現(xiàn)
一、簡介
isnull()
是Pandas庫中DataFrame和Series對象的一個函數(shù),用于檢測數(shù)據(jù)中的缺失值。它返回一個布爾類型的DataFrame或Series,其中True表示該位置的值是缺失的(NaN
或None
),F(xiàn)alse表示該位置的值不是缺失的。
二、語法和參數(shù)
DataFrame.isnull()
isnull()
函數(shù)沒有參數(shù)。它直接應用于DataFrame或Series對象。
三、實例
3.1 基本使用
代碼:
import pandas as pd import numpy as np # 創(chuàng)建一個包含NaN和None的DataFrame df = pd.DataFrame({ 'A': [1, np.nan, 3, None], 'B': [4, 5, np.nan, 7], 'C': [8, 9, 10, 11] }) print("原始DataFrame:") print(df) print("\n使用isnull()后的結(jié)果:") print(df.isnull())
輸出:
原始DataFrame:
A B C
0 1.0 4.0 8
1 NaN 5.0 9
2 3.0 NaN 10
3 NaN 7.0 11使用isnull()后的結(jié)果:
A B C
0 False False False
1 True False False
2 False True False
3 True False False
3.2 與sum()函數(shù)結(jié)合使用
代碼:
import pandas as pd import numpy as np df = pd.DataFrame({ 'A': [1, np.nan, 3, None], 'B': [4, 5, np.nan, 7], 'C': [8, 9, 10, 11] }) print("每列缺失值的數(shù)量:") print(df.isnull().sum()) print("\n每行缺失值的數(shù)量:") print(df.isnull().sum(axis=1))
輸出:
每列缺失值的數(shù)量:
A 2
B 1
C 0
dtype: int64每行缺失值的數(shù)量:
0 0
1 1
2 1
3 1
dtype: int64
3.3 與布爾索引結(jié)合使用
代碼:
import pandas as pd import numpy as np df = pd.DataFrame({ 'A': [1, np.nan, 3, None], 'B': [4, 5, np.nan, 7], 'C': [8, 9, 10, 11] }) print("原始DataFrame:") print(df) print("\n含有缺失值的行:") print(df[df.isnull().any(axis=1)]) print("\n所有值都不缺失的行:") print(df[df.notnull().all(axis=1)])
輸出:
原始DataFrame:
A B C
0 1.0 4.0 8
1 NaN 5.0 9
2 3.0 NaN 10
3 NaN 7.0 11含有缺失值的行:
A B C
1 NaN 5.0 9
2 3.0 NaN 10
3 NaN 7.0 11所有值都不缺失的行:
A B C
0 1.0 4.0 8
四、注意事項
isnull()
函數(shù)可以檢測NaN和None值,但不能檢測空字符串或其他可能被視為"缺失"的值。- 對于非數(shù)值類型的列(如字符串或日期時間),只有None值會被視為缺失,而NaN不會。
isnull()
的邏輯相反函數(shù)是notnull()
,它返回True表示非缺失值,F(xiàn)alse表示缺失值。- 在處理大型數(shù)據(jù)集時,
isnull()
可能會消耗較多內(nèi)存,因為它會創(chuàng)建一個與原DataFrame大小相同的新DataFrame。 isnull()
和isna()
是完全相同的函數(shù),可以互換使用。- 在進行數(shù)據(jù)清洗和預處理時,
isnull()
是一個非常有用的工具,可以幫助識別和處理缺失數(shù)據(jù)。
到此這篇關于Pandas庫中isnull函數(shù)的實現(xiàn)的文章就介紹到這了,更多相關Pandas isnull函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
django admin添加數(shù)據(jù)自動記錄user到表中的實現(xiàn)方法
下面小編就為大家分享一篇django admin添加數(shù)據(jù)自動記錄user到表中的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01Python嵌套函數(shù)與nonlocal使用詳細介紹
這篇文章主要介紹了Python嵌套函數(shù)與nonlocal使用,nonlocal關鍵字與global關鍵字有點相似,可以對比著理解。nonlocal關鍵字只能作用域局部變量,且始終找離當前最近的上層局部作用域中的變量2022-09-09使用Python對接OpenAi?API實現(xiàn)智能QQ機器人的方法
這篇文章主要介紹了使用Python對接OpenAi?API實現(xiàn)智能QQ機器人的方法,主要是提供一個方法思路,可以根據(jù)實現(xiàn)代碼延申出更多的解決方法,需要的朋友可以參考下2023-03-03python通過PyQt5實現(xiàn)登錄界面的示例代碼
本文主要介紹了python通過PyQt5實現(xiàn)登錄界面的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08Python Pandas中的shift()函數(shù)實現(xiàn)數(shù)據(jù)完美平移應用場景探究
shift()?是 Pandas 中一個常用的數(shù)據(jù)處理函數(shù),它用于對數(shù)據(jù)進行移動或偏移操作,常用于時間序列數(shù)據(jù)或需要計算前后差值的情況,本文將詳細介紹?shift()?函數(shù)的用法,包括語法、參數(shù)、示例以及常見應用場景2024-01-01Python十類常見異常類型總結(jié)(附捕獲及異常處理方式)
在編寫程序時難免會遇到錯誤,有的是編寫人員疏忽造成的語法錯誤,有的是程序內(nèi)部隱含邏輯問題造成的數(shù)據(jù)錯誤等等,這篇文章主要給大家介紹了關于Python十類常見異常類型總結(jié)的相關資料,文中還附捕獲及異常處理方式,需要的朋友可以參考下2023-06-06