pandas.core.groupby.DataFrameGroupBy.bfill#

DataFrameGroupBy.bfill(limit=None)[源代码]#

向后填充值。

参数:
限制int, 可选

填充值的数量限制。

返回:
Series 或 DataFrame

填充缺失值的对象。

参见

Series.bfill

在数据集中向后填充缺失值。

DataFrame.bfill

在数据集中向后填充缺失值。

Series.fillna

填充一个 Series 中的 NaN 值。

DataFrame.fillna

填充 DataFrame 中的 NaN 值。

例子

与系列一起:

>>> index = ["Falcon", "Falcon", "Parrot", "Parrot", "Parrot"]
>>> s = pd.Series([None, 1, None, None, 3], index=index)
>>> s
Falcon    NaN
Falcon    1.0
Parrot    NaN
Parrot    NaN
Parrot    3.0
dtype: float64
>>> s.groupby(level=0).bfill()
Falcon    1.0
Falcon    1.0
Parrot    3.0
Parrot    3.0
Parrot    3.0
dtype: float64
>>> s.groupby(level=0).bfill(limit=1)
Falcon    1.0
Falcon    1.0
Parrot    NaN
Parrot    3.0
Parrot    3.0
dtype: float64

使用 DataFrame:

>>> df = pd.DataFrame(
...     {"A": [1, None, None, None, 4], "B": [None, None, 5, None, 7]},
...     index=index,
... )
>>> df
          A         B
Falcon  1.0       NaN
Falcon  NaN       NaN
Parrot  NaN       5.0
Parrot  NaN       NaN
Parrot  4.0       7.0
>>> df.groupby(level=0).bfill()
          A         B
Falcon  1.0       NaN
Falcon  NaN       NaN
Parrot  4.0       5.0
Parrot  4.0       7.0
Parrot  4.0       7.0
>>> df.groupby(level=0).bfill(limit=1)
          A         B
Falcon  1.0       NaN
Falcon  NaN       NaN
Parrot  NaN       5.0
Parrot  4.0       7.0
Parrot  4.0       7.0