Python缺失值處理方法
前言:
前面python重復(fù)值處理得方法我們講了重復(fù)值是怎么處理的,今天就來說說缺失值。缺失值主要分為機(jī)械原因和人為原因。機(jī)械原因就是存儲(chǔ)器壞了,機(jī)器故障等等原因?qū)е履扯螘r(shí)間未能收集到數(shù)據(jù)。人為原因的情況種類就更多了,如刻意隱瞞等等。
先構(gòu)建一個(gè)含有缺失值的DataFrame,如下:
import pandas as pd import numpy as np data = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c']) print(data)
看出來了嗎?np.nan就是NAN值,空值的意思。
在numpy中有一個(gè)函數(shù)可以用來查看空值,不對(duì),是兩個(gè),isnull()和isna()這兩函數(shù)。
我們分別來試試它們的效果:
import pandas as pd import numpy as np data = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c']) data.isnull() data.isna()
可以看出,這兩函數(shù)的作用就是判斷數(shù)據(jù)是不是空值,如果是,就返回true,不是就是false。
通常,對(duì)空值的處理有兩種方法,一種就是把空值刪除,另外一種就是把它填上,我們先說第一種,刪除空值,我們可以dropna()這一函數(shù)來把空值刪除。要注意,它會(huì)把含有空值的整行都刪掉。例如:
import pandas as pd import numpy as np data = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c']) data.dropna()
上面的例子用了drop函數(shù)后,啥都沒啦!
我們可以設(shè)置當(dāng)每行空值多余2個(gè)時(shí)再刪除(低于2個(gè)保留),這時(shí)候要用到dropna()的參數(shù)thresh。
補(bǔ)充空值的話有挺多的方法,有用均值補(bǔ)充,中位數(shù)補(bǔ)充等,我們要用到fillna()這一函數(shù)。例如,我們用均值來填充上文中的data,
代碼如下:
import pandas as pd import numpy as np data = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c']) data.fillna(data.mean())
代碼運(yùn)行的結(jié)果如下,可以看到空值都被對(duì)應(yīng)列的均值所填充。
到此這篇關(guān)于Python缺失值處理方法的文章就介紹到這了,更多相關(guān)Python 缺失值 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python采集某度貼吧排行榜實(shí)戰(zhàn)示例
這篇文章主要為大家介紹了Python采集某度貼吧排行榜實(shí)戰(zhàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04Python使用Webargs實(shí)現(xiàn)簡(jiǎn)化Web應(yīng)用程序的參數(shù)處理
在開發(fā)Web應(yīng)用程序時(shí),參數(shù)處理是一個(gè)常見的任務(wù),Python的Webargs模塊為我們提供了一種簡(jiǎn)單而強(qiáng)大的方式來處理這些參數(shù),下面我們就來學(xué)習(xí)一下具體操作吧2024-02-02Python讀寫文件基礎(chǔ)知識(shí)點(diǎn)
在本篇文章中小編給大家整理了關(guān)于Python讀寫文件的基礎(chǔ)知識(shí)內(nèi)容,有興趣的朋友們跟著學(xué)習(xí)下。2019-06-06Python報(bào)錯(cuò)TypeError: unhashable type: ‘numpy.nd
在Python編程中,尤其是在處理數(shù)據(jù)時(shí),我們經(jīng)常使用numpy數(shù)組,然而,當(dāng)我們嘗試將numpy數(shù)組用作字典的鍵或集合的元素時(shí),就會(huì)遇到TypeError: unhashable type: 'numpy.ndarray',本文將探討這個(gè)錯(cuò)誤的原因,并給出幾種可能的解決方案,需要的朋友可以參考下2024-09-09從零學(xué)python系列之新版本導(dǎo)入httplib模塊報(bào)ImportError解決方案
在使用新版python打開舊版本代碼的時(shí)候,可能會(huì)有些報(bào)錯(cuò)或者不兼容的情況出現(xiàn),今天我們就來分析其中的一種情況2014-05-05使用Python自建輕量級(jí)的HTTP調(diào)試工具
這篇文章主要為大家詳細(xì)介紹了如何使用Python自建一個(gè)輕量級(jí)的HTTP調(diào)試工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下2025-04-04利用python計(jì)算時(shí)間差(返回天數(shù))
這篇文章主要給大家介紹了關(guān)于如何利用python計(jì)算時(shí)間差(返回天數(shù))的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09Python 整行讀取文本方法并去掉readlines換行\(zhòng)n操作
這篇文章主要介紹了Python 整行讀取文本方法并去掉readlines換行\(zhòng)n操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-09-09