python?pandas數(shù)據(jù)處理之刪除特定行與列
dropna() 方法過(guò)濾任何含有缺失值的行
pandas.DataFrame
里,如果一行數(shù)據(jù)有任意值為空,則過(guò)濾掉整行,這時(shí)候使用dropna()
方法是合適的。下面的案例,任意列只要有一個(gè)為空數(shù)據(jù),則整行都干掉。但是我們常常遇到的情況,是根據(jù)一個(gè)指標(biāo)(一列)數(shù)據(jù)的情況,去過(guò)濾行數(shù)據(jù),類似Excel里面的過(guò)濾漏斗,怎么辦?
>>> import pandas as pd >>> data = pd.DataFrame([[1.,6.5,3.],[1.],[],[6.5,3.]],index=list('abcd'),columns=list('def')) >>> data d e f a 1.0 6.5 3.0 b 1.0 NaN NaN c NaN NaN NaN d 6.5 3.0 NaN >>> data.dropna() #任意列只要有一個(gè)為空數(shù)據(jù),則整行都干掉 d e f a 1.0 6.5 3.0
方法一:dropna() 其他參數(shù)解析
原文鏈接,我們引入了dropna()
方法的其他參數(shù)。
DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
參數(shù)說(shuō)明:
- axis:
- axis=0: 刪除包含缺失值的行
- axis=1: 刪除包含缺失值的列
- how: 與axis配合使用
- how=‘any’ :只要有缺失值出現(xiàn),就刪除該行或列
- how=‘all’: 所有的值都缺失,才刪除行或列
- thresh: axis中至少有thresh個(gè)非缺失值,否則刪除。比如 axis=0,thresh=10:標(biāo)識(shí)如果該行中非缺失值的數(shù)量小于10,將刪除改行
- subset: list,在哪些列中查看是否有缺失值
- inplace: 是否在原數(shù)據(jù)上操作。如果為真,返回None,否則返回新的copy,去掉了缺失值
>>> data.dropna(axis=0,subset=['e']) #axis=0,刪除行,在subset的列中進(jìn)行查看 d e f a 1.0 6.5 3.0 d 6.5 3.0 NaN
方法二:替換并刪除,Python pandas 如果某列值為空,過(guò)濾刪除所在行數(shù)據(jù)
如上面的data數(shù)據(jù),如果希望“e”列數(shù)值為空NaN時(shí),刪除對(duì)應(yīng)行也就是“b、c”行數(shù)據(jù),保留其他行,用dropna()
似乎比較麻煩。 這個(gè)時(shí)候的思路是:
fillna()
給空值填充一個(gè)數(shù)值(如999999)index.tolist()
找出值為填充值所在行的索引drop
根據(jù)索引干掉對(duì)應(yīng)的行
>>> data['e']=data['e'].fillna(999999) >>> find_index=data[(data.e==999999)].index.tolist() >>> find_index ['b', 'c'] >>> data.drop(find_index) d e f a 1.0 6.5 3.0 d 6.5 3.0 NaN
總結(jié)
到此這篇關(guān)于python pandas數(shù)據(jù)處理之刪除特定行與列的文章就介紹到這了,更多相關(guān)python pandas刪除特定行列內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
分享3個(gè)簡(jiǎn)單的Python代碼高效運(yùn)行技巧
這篇文章主要介紹了分享3個(gè)簡(jiǎn)單的Python代碼高效運(yùn)行技巧,下面主要分享三個(gè)有效的,方便理解的,執(zhí)行高效的實(shí)用技巧,需要的朋友可以參考一下2022-03-03使用python 對(duì)驗(yàn)證碼圖片進(jìn)行降噪處理
今天小編就為大家分享一篇使用python 對(duì)驗(yàn)證碼圖片進(jìn)行降噪處理,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12pyinstaller?pathex參數(shù)引發(fā)打包no?module?name異常
這篇文章主要為大家介紹了一個(gè)關(guān)于pyinstaller的?pathex?參數(shù)所引發(fā)的打包執(zhí)行報(bào)no?module?name的異常錯(cuò)誤解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05TensorFlow實(shí)現(xiàn)簡(jiǎn)單卷積神經(jīng)網(wǎng)絡(luò)
這篇文章主要為大家詳細(xì)介紹了TensorFlow實(shí)現(xiàn)簡(jiǎn)單卷積神經(jīng)網(wǎng)絡(luò),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05Python中使用urllib2模塊編寫爬蟲的簡(jiǎn)單上手示例
這篇文章主要介紹了Python中使用urllib2模塊編寫爬蟲的簡(jiǎn)單上手示例,文中還介紹到了相關(guān)異常處理功能的添加,需要的朋友可以參考下2016-01-01python使用socket向客戶端發(fā)送數(shù)據(jù)的方法
這篇文章主要介紹了python使用socket向客戶端發(fā)送數(shù)據(jù)的方法,涉及Python使用socket實(shí)現(xiàn)數(shù)據(jù)通信的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04Python基于LightGBM進(jìn)行時(shí)間序列預(yù)測(cè)
LightGBM是擴(kuò)展機(jī)器學(xué)習(xí)系統(tǒng)。是一款基于GBDT(梯度提升決策樹)算法的分布梯度提升框架。其設(shè)計(jì)思路主要集中在減少數(shù)據(jù)對(duì)內(nèi)存與計(jì)算性能的使用上,以及減少多機(jī)器并行計(jì)算時(shí)的通訊代價(jià)。本文將通過(guò)LightGBM進(jìn)行時(shí)間序列預(yù)測(cè),感興趣的可以了解一下2022-03-03Windows系統(tǒng)下Chromedriver.exe安裝及配置詳細(xì)教程
ChromeDriver.exe是一款實(shí)用的chrome瀏覽器驅(qū)動(dòng)工具,能夠用于自動(dòng)化測(cè)試、網(wǎng)絡(luò)爬蟲和操作瀏覽器,其主要作用是模擬瀏覽器操作,下面這篇文章主要給大家介紹了關(guān)于Windows系統(tǒng)下Chromedriver.exe安裝及配置的相關(guān)資料,需要的朋友可以參考下2023-11-11Pyhton模塊和包相關(guān)知識(shí)總結(jié)
文中詳細(xì)整理了關(guān)于Python模塊和包的相關(guān)知識(shí)點(diǎn),剛?cè)腴TPython的小伙伴們可以學(xué)習(xí)一下,有助于加深Python基礎(chǔ)的理解.而且有詳細(xì)說(shuō)明及代碼示例,需要的朋友可以參考下2021-05-05