網站首頁 編程語言 正文
dropna() 方法過濾任何含有缺失值的行
pandas.DataFrame
里,如果一行數據有任意值為空,則過濾掉整行,這時候使用dropna()
方法是合適的。下面的案例,任意列只要有一個為空數據,則整行都干掉。但是我們常常遇到的情況,是根據一個指標(一列)數據的情況,去過濾行數據,類似Excel里面的過濾漏斗,怎么辦?
>>> 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() #任意列只要有一個為空數據,則整行都干掉 d e f a 1.0 6.5 3.0
方法一:dropna() 其他參數解析
原文鏈接,我們引入了dropna()
方法的其他參數。
DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
參數說明:
- axis:
- axis=0: 刪除包含缺失值的行
- axis=1: 刪除包含缺失值的列
- how: 與axis配合使用
- how=‘any’ :只要有缺失值出現,就刪除該行或列
- how=‘all’: 所有的值都缺失,才刪除行或列
- thresh: axis中至少有thresh個非缺失值,否則刪除。比如 axis=0,thresh=10:標識如果該行中非缺失值的數量小于10,將刪除改行
- subset: list,在哪些列中查看是否有缺失值
- inplace: 是否在原數據上操作。如果為真,返回None,否則返回新的copy,去掉了缺失值
>>> data.dropna(axis=0,subset=['e']) #axis=0,刪除行,在subset的列中進行查看 d e f a 1.0 6.5 3.0 d 6.5 3.0 NaN
方法二:替換并刪除,Python pandas 如果某列值為空,過濾刪除所在行數據
如上面的data數據,如果希望“e”列數值為空NaN時,刪除對應行也就是“b、c”行數據,保留其他行,用dropna()
似乎比較麻煩。 這個時候的思路是:
-
fillna()
給空值填充一個數值(如999999) -
index.tolist()
找出值為填充值所在行的索引 -
drop
根據索引干掉對應的行
>>> 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
總結
原文鏈接:https://blog.csdn.net/ITxiaozhang7/article/details/125205172
相關推薦
- 2022-04-24 記錄一次nginx啟動失敗的解決過程_nginx
- 2022-09-15 圖文詳解在Anaconda安裝Pytorch的詳細步驟_python
- 2022-07-08 python編寫WAF與Sqlmap結合實現指紋探測_python
- 2021-12-06 C語言使用rand函數生成隨機數_C 語言
- 2022-10-26 Python中打包和解包(*和**)的使用詳解_python
- 2023-05-07 pytest多重斷言的實現_python
- 2022-09-25 【報錯:No module named pytest】
- 2022-07-27 PostgreSQL出現死鎖該如何解決_PostgreSQL
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支