pandas.api.extensions.ExtensionArray._pad_or_backfill#
- ExtensionArray._pad_or_backfill(*, method, limit=None, limit_area=None, copy=True)[源代码][源代码]#
填充或回填值,由 Series/DataFrame 的 ffill 和 bfill 使用。
- 参数:
- 方法{‘backfill’, ‘bfill’, ‘pad’, ‘ffill’}
用于填充重新索引系列中空洞的方法:
pad / ffill: 将最后一个有效观测值向前传播到下一个有效观测值。
backfill / bfill: 使用下一个有效观测值来填补空白。
- 限制int, 默认为 None
这是要向前/向后填充的最大连续NaN值数。换句话说,如果存在超过此数量的连续NaN的间隙,则只会部分填充。如果未指定方法,则这是沿整个轴填充NaN的最大条目数。
- limit_area{‘inside’, ‘outside’} or None, default None
Specifies which area to limit filling. - ‘inside’: Limit the filling to the area within the gaps. - ‘outside’: Limit the filling to the area outside the gaps. If None, no limitation is applied.
- 复制布尔值, 默认为 True
是否在填充之前复制数据。如果为 False,则应修改原始数据且不应分配新内存。对于无法执行此操作的 ExtensionArray 子类,由作者决定是忽略 “copy=False” 还是引发。如果存在任何 NA,则基类实现会忽略该关键字。
- 返回:
- 与自身类型相同
The filled array with the same type as the original.
参见
Series.ffill
Forward fill missing values.
Series.bfill
Backward fill missing values.
DataFrame.ffill
Forward fill missing values in DataFrame.
DataFrame.bfill
Backward fill missing values in DataFrame.
api.types.isna
Check for missing values.
api.types.isnull
Check for missing values.
例子
>>> arr = pd.array([np.nan, np.nan, 2, 3, np.nan, np.nan]) >>> arr._pad_or_backfill(method="backfill", limit=1) <IntegerArray> [<NA>, 2, 2, 3, <NA>, <NA>] Length: 6, dtype: Int64