Spec-Zone.ru › pandas 0.23

pandas.DataFrame.ewm

DataFrame.ewm(com=None, span=None, halflife=None, alpha=None, min_periods=0, adjust=True, ignore_na=False, axis=0) [source]

Обеспечивает экспоненциально взвешенные функции

Новая в версии 0.18.0.

Параметры:

com : float, необязательно

Указывает затухание в терминах центра масс, \(\alpha = 1 / (1 + com),\text{ для } com \geq 0\)

span : float, необязательно

Указывает затухание в терминах интервала, \(\alpha = 2 / (span + 1),\text{ для } span \geq 1\)

halflife : float, необязательно

Указывает затухание в терминах периода полураспада, \(\alpha = 1 - exp(log(0.5) / halflife),\text{ для } halflife > 0\)

alpha : float, необязательно

Указывает коэффициент сглаживания \(\alpha\) напрямую, \(0 < \alpha \leq 1\)

Новая в версии 0.18.0.

min_periods : int, по умолчанию 0

Минимальное количество наблюдений в окне, необходимое для получения значения (в противном случае результат — NA).

adjust : boolean, по умолчанию True

Деление на корректирующий коэффициент затухания в начальных периодах для учета дисбаланса в относительных весах (рассмотрение EWMA как скользящей средней)

ignore_na : boolean, по умолчанию False

Игнорирование пропущенных значений при расчете весов; укажите True для воспроизведения поведения до версии 0.15.0

Возвращает:
a Window подкласc, подходящий для конкретной операции

См. также

rolling
Предоставляет вычисления скользящего окна
expanding
Предоставляет расширяющие преобразования.

Примечания

Должен быть предоставлен ровно один из центра масс, интервала, периода полураспада и альфа. Допустимые значения и соотношение между параметрами указаны в описаниях параметров выше; подробное объяснение можно найти по ссылке в конце этого раздела.

Когда adjust равно True (по умолчанию), взвешенные средние рассчитываются с использованием весов (1-alpha)**(n-1), (1-alpha)**(n-2), …, 1-alpha, 1.

Когда adjust равно False, взвешенные средние рассчитываются рекурсивно как:
weighted_average[0] = arg[0]; weighted_average[i] = (1-alpha)*weighted_average[i-1] + alpha*arg[i].

Когда ignore_na равно False (по умолчанию), веса основаны на абсолютных позициях. Например, веса x и y, используемые для расчета конечной взвешенной средней [x, None, y], равны (1-alpha)**2 и 1 (если adjust равно True), и (1-alpha)**2 и alpha (если adjust равно False).

Когда ignore_na равно True (воспроизводя поведение до версии 0.15.0), веса основаны на относительных позициях. Например, веса x и y, используемые для расчета конечной взвешенной средней [x, None, y], равны 1-alpha и 1 (если adjust равно True), и 1-alpha и alpha (если adjust равно False).

Более подробную информацию можно найти по адресу http://pandas.pydata.org/pandas-docs/stable/computation.html#exponentially-weighted-windows

Примеры

>>> df = DataFrame({'B': [0, 1, 2, np.nan, 4]})
     B
0  0.0
1  1.0
2  2.0
3  NaN
4  4.0
>>> df.ewm(com=0.5).mean()
          B
0  0.000000
1  0.750000
2  1.615385
3  1.615385
4  3.670213

© 2008–2012, 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/0.23.4/generated/pandas.DataFrame.ewm.html

Spec-Zone.ru

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