網站首頁 編程語言 正文
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
相關推薦
- 2023-06-20 在VScode里面添加Python解釋器的詳細步驟_python
- 2022-07-18 Pod創建多個容器并訪問指定容器
- 2022-06-14 C#使用正則表達式_C#教程
- 2022-06-14 C#實現加密的幾種方法介紹_C#教程
- 2021-12-07 C語言實現頁面置換算法(FIFO、LRU)_C 語言
- 2022-09-19 .Net?Core使用layui多文件上傳_實用技巧
- 2022-05-06 C語言基礎知識點指針的使用_C 語言
- 2022-11-02 Android啟動初始化方案App?StartUp的應用詳解_Android
- 最近更新
-
- 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同步修改后的遠程分支