w3resource

Pandas DataFrame: ewm() function

DataFrame - ewm() function

The ewm() function is used to provide exponential weighted functions.

Syntax:

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

Parameters:

Name Description Type/Default Value Required / Optional
com Specify decay in terms of center of mass,
α=1/(1+com), for com≥0.
float Optional
span  Specify decay in terms of center of mass,
α=1/(1+com), for com≥0.
float Optional
halflife Specify decay in terms of half-life,
α=1−exp(log(0.5)/halflife),forhalflife >0.
float Optional
alpha  Specify smoothing factor α directly, 0<α≤1. float Optional
min_periods  Minimum number of observations in window required to have a value (otherwise result is NA). int
Default Value: 0
Required
adjust  Divide by decaying adjustment factor in beginning periods to account for imbalance in relative weightings (viewing EWMA as a moving average). bool
Default Value: True
Required
ignore_na  Ignore missing values when calculating weights; specify True to reproduce pre-0.15.0 behavior. bool
Default Value: False
Required
axis  The axis to use. The value 0 identifies the rows, and 1 identifies the columns. {0 or 'index', 1 or 'columns'}
Default Value: 0
Required

Returns: DataFrame
A Window sub-classed for the particular operation.

Notes:

Exactly one of center of mass, span, half-life, and alpha must be provided. Allowed values and relationship between the parameters are specified in the parameter descriptions above; see the link at the end of this section for a detailed explanation.

When adjust is True (default), weighted averages are calculated using weights (1-alpha)**(n-1), (1-alpha)**(n-2), …, 1-alpha, 1.

When adjust is False, weighted averages are calculated recursively as:
weighted_average[0] = arg[0]; weighted_average[i] = (1-alpha)*weighted_average[i-1] + alpha*arg[i].

When ignore_na is False (default), weights are based on absolute positions. For example, the weights of x and y used in calculating the final weighted average of [x, None, y] are (1-alpha)**2 and 1 (if adjust is True), and (1-alpha)**2 and alpha (if adjust is False).

When ignore_na is True (reproducing pre-0.15.0 behavior), weights are based on relative positions. For example, the weights of x and y used in calculating the final weighted average of [x, None, y] are 1-alpha and 1 (if adjust is True), and 1-alpha and alpha (if adjust is False).

Example:


Download the Pandas DataFrame Notebooks from here.

Previous: DataFrame - expanding() function
Next: DataFrame - abs() function



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://w3resource.com/pandas/dataframe/dataframe-ewm.php