如何使用 Pandas series.fillna() 替換缺失值?
pandas series.fillna() 方法用於用指定值替換缺失值。此方法替換整個序列物件中的 Nan 或 NA 值。
pandas fillna 的引數如下所示:
Value - 它允許我們指定一個特定的值來替換 Nan,預設情況下它取 None。
Method - 用於填充重新索引的 Series 中的缺失值。它採用以下任何值,如 'backfill'、'bfill'、'pad'、'ffill' 和 None(預設值)。
Inplace - 此引數採用布林值。如果它取 True,則修改將應用於原始序列物件本身,否則,它將建立一個新的序列,並將更新的缺失值作為結果。預設值為 False。
Limit - 此引數採用整數值,用於指定希望向前/向後填充多少個 NA 值。此引數的預設值為 None。
Axis - 它採用 0 或索引標籤。
Downcast - 它採用一個字典,指定資料型別的降級。
在這裡,我們將瞭解 series.fillna() 方法如何替換缺失值。
示例 1
在下面的示例中,我們將用整數 10 替換缺失值。
# importing pandas package
import pandas as pd
import numpy as np
# create a series
s = pd.Series([np.nan, np.nan, 89, 64, np.nan], index=["a", "b", "c", "d", "e"])
print(s)
# replace Missing values with 10
result = s.fillna(10)
print('Result:')
print(result)說明
最初,我們建立了包含一些缺失值的 pandas 系列物件。然後用值 10 應用 fillna() 方法。這裡,預設引數沒有改變。
輸出
輸出如下:
a NaN b NaN c 89.0 d 64.0 e NaN dtype: float64 Result: a 10.0 b 10.0 c 89.0 d 64.0 e 10.0 dtype: float64
在上面的輸出塊中,我們可以看到整個序列物件中的所有 Nan 值都被很好地替換為值 10。
示例 2
這次,我們將透過將 bfill 值指定給方法引數來替換缺失值。這樣,我們就不需要指定任何特定值來填充缺失值,它將取 Nan 之後的作為替換值。
# importing pandas package
import pandas as pd
import numpy as np
# create a series
s = pd.Series([np.nan, np.nan, 89, 64, np.nan], index=["a", "b", "c", "d", "e"])
print(s)
# replace Missing values with bfill
result = s.fillna(method='bfill')
print('Result:')
print(result)輸出
輸出如下所示:
a NaN b NaN c 89.0 d 64.0 e NaN dtype: float64 Result: a 89.0 b 89.0 c 89.0 d 64.0 e NaN dtype: float64
在上面的輸出塊中,我們可以看到索引位置 a、b 處的 Nan 值被替換為值 89,這是因為我們將 bfill 值指定給了方法引數。索引位置 e 處的 Nan 值保持不變。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP