Spec-Zone.ru › pandas 2

pandas.Series.ffill

Series.ffill(*, axis=None, inplace=False, limit=None, limit_area=None, downcast=_NoDefault.no_default)[source]

Заполнение пропущенных значений (NaN) последним действительным значением.

Параметры:
axis:{0 или ‘index’} для Series, {0 или ‘index’, 1 или ‘columns’} для DataFrame

Ось, по которой заполняются пропущенные значения. Для Series этот параметр игнорируется и по умолчанию равен 0.

inplace:bool, по умолчанию False

Если True, заполнение происходит на месте. Примечание: это изменит любые другие представления этого объекта (например, срез без копирования для столбца в DataFrame).

limit:int, по умолчанию None

Если указан метод, это максимальное количество последовательных пропущенных значений для заполнения вперёд/назад. Другими словами, если есть разрыв с более чем этим количеством последовательных пропущенных значений, он будет заполнен только частично. Если метод не указан, это максимальное количество записей по всей оси, где будут заполнены пропущенные значения. Должно быть больше 0, если не равно None.

limit_area:{None, ‘inside’, ‘outside’}, по умолчанию None

Если задан limit, последовательные пропущенные значения будут заполнены с этим ограничением.

  • None: Ограничение заполнения отсутствует.

  • ‘inside’: Заполнение пропущенных значений только в окружении действительных значений (интерполяция).

  • ‘outside’: Заполнение пропущенных значений только вне действительных значений (экстраполяция).

Добавлен в версии 2.2.0.

downcast:dict, по умолчанию None

Словарь item->dtype, указывающий, что можно преобразовать в более компактный тип, или строка ‘infer’, которая попытается преобразовать в подходящий эквивалентный тип (например, float64 в int64, если это возможно).

Устарело начиная с версии 2.2.0.

Возвращает:
Series/DataFrame или None

Объект с заполненными пропущенными значениями или None, если inplace=True.

Примеры

>>> df = pd.DataFrame([[np.nan, 2, np.nan, 0],
...                    [3, 4, np.nan, 1],
...                    [np.nan, np.nan, np.nan, np.nan],
...                    [np.nan, 3, np.nan, 4]],
...                   columns=list("ABCD"))
>>> df
     A    B   C    D
0  NaN  2.0 NaN  0.0
1  3.0  4.0 NaN  1.0
2  NaN  NaN NaN  NaN
3  NaN  3.0 NaN  4.0
>>> df.ffill()
     A    B   C    D
0  NaN  2.0 NaN  0.0
1  3.0  4.0 NaN  1.0
2  3.0  4.0 NaN  1.0
3  3.0  3.0 NaN  4.0
>>> ser = pd.Series([1, np.nan, 2, 3])
>>> ser.ffill()
0   1.0
1   1.0
2   2.0
3   3.0
dtype: float64

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.Series.ffill.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API