Spec-Zone.ru › pandas 2

pandas.DataFrame.ffill

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

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

Параметры:
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.DataFrame.ffill.html

Spec-Zone.ru

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