python之怎么使用fillna()填充缺失值

蝸牛 互聯網技術資訊 2022-07-18 15 0

本篇內容主要講解“python之怎么使用fillna()填充缺失值”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“python之怎么使用fillna()填充缺失值”吧!

使用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

代碼結果:

python之怎么使用fillna()填充缺失值  python 第1張

一、不指定任何參數

1. ?用常數填充

#一、不指定method參數
?
#1.用常數填充
print?(df1.fillna(100))
print?("-----------------------")
print?(df1)

運行結果:

python之怎么使用fillna()填充缺失值  python 第2張

2. ?用字典填充

#2.用字典填充
df1.fillna({0:10,1:20,2:30})

運行結果:

python之怎么使用fillna()填充缺失值  python 第3張

二、指定inplace參數

#二、指定inplace參數
?
print?(df1.fillna(0,inplace=True))
print?("-------------------------")
print?(df1)

運行結果:

python之怎么使用fillna()填充缺失值  python 第4張

三、指定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

運行結果:

python之怎么使用fillna()填充缺失值  python 第5張

#1.method?=?'ffill'/'pad':用前一個非缺失值去填充該缺失值
?
df2.fillna(method='ffill')

運行結果:

python之怎么使用fillna()填充缺失值  python 第6張

2.method = 'bflii'/'backfill':用下一個非缺失值填充該缺失值

#2.method?=?'bflii'/'backfill':用下一個非缺失值填充該缺失值
?
df2.fillna(method='bfill')

運行結果:

python之怎么使用fillna()填充缺失值  python 第7張

四、指定limit參數

#四、指定limit參數
?
#用下一個非缺失值填充該缺失值
#只填充2個
?
df2.fillna(method='bfill',?limit=2)

運行結果:?

python之怎么使用fillna()填充缺失值  python 第8張

五、指定axis參數

#五、指定axis參數
?
df2.fillna(method="ffill",?limit=1,?axis=1)

運行結果:

python之怎么使用fillna()填充缺失值  python 第9張

到此,相信大家對“python之怎么使用fillna()填充缺失值”有了更深的了解,不妨來實際操作一番吧!這里是蝸牛博客網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:niceseo99@gmail.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

評論

2018人人澡人摸人人添_月夜影视在线观看资源_一本二卡三卡四卡乱码小说_tobu8在线观看下载