pandas.core.resample.Resampler.bfill#

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

向后填充重采样数据中的新缺失值。

在统计学中,插补(imputation)是用替换值替换缺失数据值的过程 [1]。在重采样数据时,可能会出现缺失值(例如,当重采样频率高于原始频率时)。向后填充会将重采样数据中出现的 NaN 值用原始序列中的下一个值替换。原始数据中存在的缺失值将不会被修改。

Parameters:
<strong>limit</strong>int, optional

要填充的最大值数量。

Returns:
Series, DataFrame

一个向上采样后的 Series 或 DataFrame,其中包含向后填充的 NaN 值。

参见

bfill

backfill 的别名。

fillna

使用指定的方法填充 NaN 值,该方法可以是 ‘backfill’。

nearest

从中心开始,用最近的邻近值填充 NaN 值。

ffill

向前填充 NaN 值。

Series.fillna

使用指定的方法填充 Series 中的 NaN 值,该方法可以是 ‘backfill’。

DataFrame.fillna

使用指定的方法填充 DataFrame 中的 NaN 值,该方法可以是 ‘backfill’。

参考文献

Examples

重采样 Series:

>>> s = pd.Series([1, 2, 3],
...               index=pd.date_range('20180101', periods=3, freq='h'))
>>> s
2018-01-01 00:00:00    1
2018-01-01 01:00:00    2
2018-01-01 02:00:00    3
Freq: h, dtype: int64
>>> s.resample('30min').bfill()
2018-01-01 00:00:00    1
2018-01-01 00:30:00    2
2018-01-01 01:00:00    2
2018-01-01 01:30:00    3
2018-01-01 02:00:00    3
Freq: 30min, dtype: int64
>>> s.resample('15min').bfill(limit=2)
2018-01-01 00:00:00    1.0
2018-01-01 00:15:00    NaN
2018-01-01 00:30:00    2.0
2018-01-01 00:45:00    2.0
2018-01-01 01:00:00    2.0
2018-01-01 01:15:00    NaN
2018-01-01 01:30:00    3.0
2018-01-01 01:45:00    3.0
2018-01-01 02:00:00    3.0
Freq: 15min, dtype: float64

重采样具有缺失值的 DataFrame:

>>> df = pd.DataFrame({'a': [2, np.nan, 6], 'b': [1, 3, 5]},
...                   index=pd.date_range('20180101', periods=3,
...                                       freq='h'))
>>> df
                       a  b
2018-01-01 00:00:00  2.0  1
2018-01-01 01:00:00  NaN  3
2018-01-01 02:00:00  6.0  5
>>> df.resample('30min').bfill()
                       a  b
2018-01-01 00:00:00  2.0  1
2018-01-01 00:30:00  NaN  3
2018-01-01 01:00:00  NaN  3
2018-01-01 01:30:00  6.0  5
2018-01-01 02:00:00  6.0  5
>>> df.resample('15min').bfill(limit=2)
                       a    b
2018-01-01 00:00:00  2.0  1.0
2018-01-01 00:15:00  NaN  NaN
2018-01-01 00:30:00  NaN  3.0
2018-01-01 00:45:00  NaN  3.0
2018-01-01 01:00:00  NaN  3.0
2018-01-01 01:15:00  NaN  NaN
2018-01-01 01:30:00  6.0  5.0
2018-01-01 01:45:00  6.0  5.0
2018-01-01 02:00:00  6.0  5.0