網站首頁 編程語言 正文
使用fillna()填充缺失值
df = pd.read_csv('ccf_offline_stage1_train.csv') print(df['Distance']) df['distance'] = df['Distance'].fillna(-1).astype(int) print(df['distance'])
結果太長不展示了,經過操作后成功將dataframe中distance列的缺失值都變成了-1
關于fillna()函數詳解
inplace參數的取值:True、False
-
True
:直接修改原對象 -
False
:創建一個副本,修改副本,原對象不變(缺省默認)
method參數的取值 : {‘pad’, ‘ffill’,‘backfill’, ‘bfill’, None}, default None
-
pad
/ffill
:用前一個非缺失值去填充該缺失值 -
backfill
/bfill
:用下一個非缺失值填充該缺失值 -
None
:指定一個值去替換缺失值(缺省默認這種方式)
limit參數:限制填充個數
axis參數:修改填充方向
#導包 import pandas as pd import numpy as np from numpy import nan as NaN
df1=pd.DataFrame([[1,2,3],[NaN,NaN,2],[NaN,NaN,NaN],[8,8,NaN]]) df1
代碼結果:
一、不指定任何參數
1. ?用常數填充
#一、不指定method參數 #1.用常數填充 print (df1.fillna(100)) print ("-----------------------") print (df1)
運行結果:
2. ?用字典填充
#2.用字典填充 df1.fillna({0:10,1:20,2:30})
運行結果:
二、指定inplace參數
#二、指定inplace參數 print (df1.fillna(0,inplace=True)) print ("-------------------------") print (df1)
運行結果:
三、指定method參數
1.method = 'ffill'/'pad':用前一個非缺失值去填充該缺失值
#三、指定method參數 df2 = pd.DataFrame(np.random.randint(0,10,(5,5))) df2.iloc[1:4,3] = NaN df2.iloc[2:4,4] = NaN df2
運行結果:
#1.method = 'ffill'/'pad':用前一個非缺失值去填充該缺失值 df2.fillna(method='ffill')
運行結果:
2.method = 'bflii'/'backfill':用下一個非缺失值填充該缺失值
#2.method = 'bflii'/'backfill':用下一個非缺失值填充該缺失值 df2.fillna(method='bfill')
運行結果:
四、指定limit參數
#四、指定limit參數 #用下一個非缺失值填充該缺失值 #只填充2個 df2.fillna(method='bfill', limit=2)
運行結果:?
五、指定axis參數
#五、指定axis參數 df2.fillna(method="ffill", limit=1, axis=1)
運行結果:
原文鏈接:https://blog.csdn.net/qq_39348113/article/details/82608143
相關推薦
- 2022-04-11 C#創建控制Windows服務_C#教程
- 2024-01-05 【PostgreSQL啟動,停止命令(重啟)】
- 2022-05-22 flex彈性布局詳解_Flex
- 2022-08-07 pandas中pd.groupby()的用法詳解_python
- 2023-03-21 C#中寫入和讀取TXT文件問題_C#教程
- 2024-03-17 針對Tomcat部署項目,修改后臺代碼,前臺網頁無變化問題的解決方案(超詳細有效)
- 2023-02-04 Rust?語言的全鏈路追蹤庫?tracing使用方法_Rust語言
- 2022-11-05 Android?TabLayout?自定義樣式及使用詳解_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同步修改后的遠程分支