Spec-Zone.ru › pandas 2

pandas.core.window.expanding.Expanding.apply

Expanding.apply(func, raw=False, engine=None, engine_kwargs=None, args=None, kwargs=None)[source]

Вычисление пользовательской функции агрегирования с расширением.

Parameters:
func:function

Должно возвращать одно значение из входного массива ndarray, если raw=True или одно значение из Series, если raw=False. Также может принимать функцию Numba JIT с engine='numba'.

raw:bool, по умолчанию False
  • False : передает каждую строку или столбец в функцию как Series.

  • True : переданная функция будет получать объекты ndarray вместо этого. Если вы просто применяете функцию сокращения NumPy, это позволит значительно улучшить производительность.

engine:str, по умолчанию None
  • 'cython' : выполняет rolling apply с помощью C-расширений из cython.

  • 'numba' : выполняет rolling apply с помощью JIT-компилированного кода из numba. Доступно только при raw установлено в True.

  • None : по умолчанию 'cython' или глобально устанавливает compute.use_numba.

engine_kwargs:dict, по умолчанию None
  • Для 'cython' движка допустимых engine_kwargs нет.

  • Для 'numba' движка, движок может принимать nopython, nogil и parallel ключи словаря. Значения должны быть либо True, либо False. По умолчанию engine_kwargs для 'numba' движка {'nopython': True, 'nogil': False, 'parallel': False} и будет применено к func и apply агрегированию.

args:tuple, по умолчанию None

Позиционные аргументы, которые будут переданы в func.

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

Ключевые аргументы, которые будут переданы в func.

Returns:
Series или DataFrame

Тип возвращаемого значения совпадает с исходным объектом с np.float64 типом данных.

См. также

pandas.Series.expanding

Вызов expanding с данными Series.

pandas.DataFrame.expanding

Вызов expanding с DataFrame.

pandas.Series.apply

Агрегирующее apply для Series.

pandas.DataFrame.apply

Агрегирующее apply для DataFrame.

Примеры

>>> ser = pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])
>>> ser.expanding().apply(lambda s: s.max() - 2 * s.min())
a   -1.0
b    0.0
c    1.0
d    2.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.core.window.expanding.Expanding.apply.html

Spec-Zone.ru

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