最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Pandas檢測(cè)None和Nan的實(shí)現(xiàn)方式

 更新時(shí)間:2025年09月01日 16:36:01   作者:SunnyRivers  
文章總結(jié):Pandas中None(空值)和NaN(非數(shù))需區(qū)分檢測(cè),isnull/isna用于識(shí)別缺失值,math.isnan檢測(cè)NaN,is運(yùn)算符或==檢測(cè)None,兩者概念不同,需根據(jù)場(chǎng)景選擇合適方法

前言

使用pandas的時(shí)候經(jīng)常需要檢測(cè)空值,但每次感覺(jué)都判斷不全或者感覺(jué)很困惑,因此這里做個(gè)簡(jiǎn)單的總結(jié)

None

None是Python的特殊類型,NoneType對(duì)象,它只有一個(gè)值None.它不支持任何運(yùn)算也沒(méi)有任何內(nèi)建方法。

None和任何其他的數(shù)據(jù)類型比較永遠(yuǎn)返回False。

None有自己的數(shù)據(jù)類型NoneType。你可以將None復(fù)制給任何變量,但是你不能創(chuàng)建其他NoneType對(duì)象。

  • 數(shù)據(jù)類型
>>>type(None)
<class 'NoneType'>

Nan

python 中Nan是not a number(非數(shù))它即不是無(wú)窮大, 也不是無(wú)窮小,無(wú)窮大減無(wú)窮大會(huì)導(dǎo)致NaN,無(wú)窮大乘以0或無(wú)窮小或除以無(wú)窮大會(huì)導(dǎo)致NaN,有NaN參與的運(yùn)算, 其結(jié)果也一定是NaN,NaN != NaN

  • 數(shù)據(jù)類型
>>>type(np.nan)
<class 'float'>

Null

  • 空字符串
>>>type('')
<class ''str'>

如何檢測(cè)

個(gè)人感覺(jué)最好用的是pd.isnull(或pd.isna)

isnull和isna區(qū)別

isnull是isna的別名,既然一樣為什么要搞兩個(gè)名字?Pandas dataframe是根據(jù)R的dataframe設(shè)計(jì)的,而R語(yǔ)言中na和null是兩種不同的數(shù)據(jù)類型,因此有isna和isnull,python就保留了這兩個(gè)方法,isnull是isna的別名而已;

另一方面,pandas是建立在numpy之上的,numpy中又沒(méi)有na或null值,而是用np.nan來(lái)表示缺失值,所以pd.isnull不僅可以檢測(cè)np.nan也可以檢測(cè)None

注意

pd.isnull是不可以檢測(cè)字符串的,比如’',‘nan’,‘None’。這個(gè)也很好理解,字符串有字符串的判斷方式。

比較全面的判斷這些與空值有關(guān)的方法

i == '' or pd.isnull(i) or pd.isnull(float('nan')) (或者 i =='nan') or i =='None'

煮個(gè)栗子

list = ['nan', '', 'None', None, np.nan]
for i in list:
    if i == '' or pd.isnull(i) or pd.isnull(float('nan')) or i == 'None':
        print(i)

結(jié)果

nan

None
None
nan

后記

當(dāng)然除了用pandas,python中還有其他方式檢測(cè)None和Nan。

  • math.isnan

首先,讓我們看一下如何檢測(cè)NaN。Python提供了一個(gè)名為math.isnan()的函數(shù),可以用來(lái)檢測(cè)一個(gè)值是否為NaN。這個(gè)函數(shù)需要導(dǎo)入math模塊才能使用。下面是一個(gè)示例代碼:

import math

x = float('nan')
if math.isnan(x):
    print("x is NaN")

在上面的代碼中,我們將一個(gè)NaN值賦給變量x,然后使用math.isnan()函數(shù)來(lái)檢測(cè)x是否為NaN。如果是,就會(huì)打印出"x is NaN"。

  • is運(yùn)算符檢測(cè)None
x = None
if x is None:
    print("x is None")

在上面的代碼中,我們將None賦給變量x,然后使用is運(yùn)算符來(lái)檢測(cè)x是否為None。

如果是,就會(huì)打印出"x is None"。另外,還可以使用==運(yùn)算符來(lái)檢測(cè)變量是否等于None,這與使用is運(yùn)算符的結(jié)果是等效的。

需要注意的是:

  • NaN和None是兩種不同的概念。NaN用于表示非法的數(shù)字,而None表示空值或缺失值。
  • 因此,在不同的情況下,我們需要使用不同的方法來(lái)檢測(cè)它們。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python對(duì)PDF文件的常用操作方法詳解

    Python對(duì)PDF文件的常用操作方法詳解

    PDF是Portable?Document?Format的縮寫(xiě),這類文件通常使用`.pdf`作為其擴(kuò)展名。在日常開(kāi)發(fā)工作中,最容易遇到的就是從PDF中讀取文本內(nèi)容以及用已有的內(nèi)容生成PDF文檔這兩個(gè)任務(wù)。本文為大家介紹了幾個(gè)Python中常見(jiàn)的PDF操作,需要的可以參考一下
    2022-05-05
  • django用戶注冊(cè)、登錄、注銷和用戶擴(kuò)展的示例

    django用戶注冊(cè)、登錄、注銷和用戶擴(kuò)展的示例

    本篇文章主要介紹了django用戶注冊(cè)、登錄、注銷和用戶擴(kuò)展的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • Python scipy實(shí)現(xiàn)差分進(jìn)化算法

    Python scipy實(shí)現(xiàn)差分進(jìn)化算法

    差分進(jìn)化算法是廣義的遺傳算法的一種,核心思想是變異,這篇文章主要為大家介紹的則是著名的scipy庫(kù)中對(duì)差分進(jìn)化算法的實(shí)現(xiàn),希望對(duì)大家有所幫助
    2023-08-08
  • pycharm配置當(dāng)鼠標(biāo)懸停時(shí)快速提示方法參數(shù)

    pycharm配置當(dāng)鼠標(biāo)懸停時(shí)快速提示方法參數(shù)

    這篇文章主要介紹了pycharm中配置當(dāng)鼠標(biāo)懸停時(shí)快速提示方法參數(shù),本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 使用PyCharm批量爬取小說(shuō)的完整代碼

    使用PyCharm批量爬取小說(shuō)的完整代碼

    這篇文章主要介紹了使用PyCharm批量爬取小說(shuō),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • Python?web實(shí)戰(zhàn)教程之Django文件上傳和處理詳解

    Python?web實(shí)戰(zhàn)教程之Django文件上傳和處理詳解

    Django和Flask都是Python的Web框架,用于開(kāi)發(fā)Web應(yīng)用程序,這篇文章主要給大家介紹了關(guān)于Python?web實(shí)戰(zhàn)教程之Django文件上傳和處理的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • 如何使用python讀取Excel指定范圍并轉(zhuǎn)為數(shù)組

    如何使用python讀取Excel指定范圍并轉(zhuǎn)為數(shù)組

    python處理數(shù)據(jù)文件的途徑有很多種,下面這篇文章主要給大家介紹了關(guān)于如何使用python讀取Excel指定范圍并轉(zhuǎn)為數(shù)組的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • Python使用貪婪算法解決問(wèn)題

    Python使用貪婪算法解決問(wèn)題

    這篇文章主要介紹了Python使用貪婪算法解決問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Python自動(dòng)化操作Excel方法詳解(xlrd,xlwt)

    Python自動(dòng)化操作Excel方法詳解(xlrd,xlwt)

    Excel是Windows環(huán)境下流行的、強(qiáng)大的電子表格應(yīng)用。本文將詳解用Python利用xlrd和xlwt實(shí)現(xiàn)自動(dòng)化操作Excel的方法詳細(xì),需要的可以參考一下
    2022-06-06
  • 解決Django Haystack全文檢索為空的問(wèn)題

    解決Django Haystack全文檢索為空的問(wèn)題

    這篇文章主要介紹了解決Django Haystack全文檢索為空的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05

最新評(píng)論

光泽县| 绥滨县| 丹棱县| 芜湖市| 临沭县| 洛扎县| 吉水县| 峨眉山市| 屏山县| 泊头市| 鲁山县| 饶平县| 耿马| 克山县| 新郑市| 衡阳县| 广德县| 赣州市| 林芝县| 兴海县| 和静县| 泸定县| 乃东县| 梧州市| 呼和浩特市| 盘山县| 深水埗区| 中西区| 明水县| 忻州市| 贵定县| 兴隆县| 普格县| 莱芜市| 连城县| 高台县| 陇川县| 丹东市| 丽江市| 铜山县| 保山市|