pandas.Series.ewm
-
Series.ewm(self, com=None, span=None, halflife=None, alpha=None, min_periods=0, adjust=True, ignore_na=False, axis=0)[source] -
Предоставление экспоненциально взвешенных функций.
Новое в версии 0.18.0.
Параметры: -
com : float, optional -
Указывает затухание в терминах центральной массы, \(\alpha = 1 / (1 + com),\text{ для } com \geq 0\).
-
span : float, optional -
Указывает затухание в терминах интервала, \(\alpha = 2 / (span + 1),\text{ для } span \geq 1\).
-
halflife : float, optional -
Указывает затухание в терминах полураспада, \(\alpha = 1 - exp(log(0.5) / halflife),\text{ для } halflife > 0\).
-
alpha : float, optional -
Непосредственно указывает коэффициент сглаживания \(\alpha\), \(0 < \alpha \leq 1\).
Новое в версии 0.18.0.
-
min_periods : int, default 0 -
Минимальное количество наблюдений в окне, необходимое для получения значения (в противном случае результат — NaN).
-
adjust : bool, default True -
Деление на коэффициент затухания в начальных периодах для учета дисбаланса относительных весов (восприятие EWMA как скользящей средней).
-
ignore_na : bool, default False -
Игнорирование пропущенных значений при расчете весов; укажите True для воспроизведения поведения до версии 0.15.0.
-
axis : {0 or ‘index’, 1 or ‘columns’}, default 0 -
Используемая ось. Значение 0 определяет строки, а 1 — столбцы.
Возвращаемое значение: - DataFrame
-
Подклассированный объект Window для конкретной операции.
См. также
Примечания
Должен быть указан ровно один из параметров: центральная масса, интервал, полупериод и альфа. Допустимые значения и взаимоотношения между параметрами указаны в описаниях параметров выше; подробное объяснение можно найти по ссылке в конце этого раздела.
При adjust = True (по умолчанию), взвешенные средние вычисляются с помощью весов (1-альфа)**(n-1), (1-альфа)**(n-2), …, 1-альфа, 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-альфа)**2 и 1 (если adjust = True), и (1-альфа)**2 и альфа (если adjust = False).
Когда ignore_na = True (воспроизводя поведение до версии 0.15.0), веса основаны на относительных позициях. Например, веса x и y, используемые для расчета окончательной взвешенной средней [x, None, y], составляют 1-альфа и 1 (если adjust = True), и 1-альфа и альфа (если adjust = False).
Более подробную информацию можно найти на http://pandas.pydata.org/pandas-docs/stable/user_guide/computation.html#exponentially-weighted-windows
Примеры
>>> df = pd.DataFrame({'B': [0, 1, 2, np.nan, 4]}) >>> df 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.25.0/reference/api/pandas.Series.ewm.html