featuretools.primitives.ExpandingTrend#

class featuretools.primitives.ExpandingTrend(gap=1, min_periods=1)[source]#

Computes the expanding trend for events over a given window.

Description:

Given a list of datetimes, returns the expanding trend starting at the row gap rows away from the current row. An expanding primitive calculates the value of a primitive for a given time with all the data available up to the corresponding point in time.

Input datetimes should be monotonic.

Parameters:
  • gap (int, optional) – Specifies a gap backwards from each instance before the usable data begins. Corresponds to number of rows. Defaults to 1.

  • min_periods (int, optional) – Minimum number of observations required for performing calculations over the window. Defaults to 1.

Examples

>>> import pandas as pd
>>> expanding_trend = ExpandingTrend()
>>> times = pd.date_range(start='2019-01-01', freq='1D', periods=5)
>>> ans = expanding_trend(times, [5, 4, 3, 2, 1]).tolist()
>>> [round(x, 2) for x in ans]
[nan, nan, nan, -1.0, -1.0]

We can also control the gap before the expanding calculation.

>>> import pandas as pd
>>> expanding_trend = ExpandingTrend(gap=0)
>>> times = pd.date_range(start='2019-01-01', freq='1D', periods=5)
>>> ans = expanding_trend(times, [5, 4, 3, 2, 1]).tolist()
>>> [round(x, 2) for x in ans]
[nan, nan, -1.0, -1.0, -1.0]

We can also control the minimum number of periods required for the rolling calculation.

>>> import pandas as pd
>>> expanding_trend = ExpandingTrend(min_periods=3)
>>> times = pd.date_range(start='2019-01-01', freq='1min', periods=5)
>>> ans = expanding_trend(times, [50, 4, 13, 22, 10]).tolist()
>>> [round(x, 2) for x in ans]
[nan, nan, nan, -18.5, -7.5]
__init__(gap=1, min_periods=1)[source]#

Methods

__init__([gap, min_periods])

flatten_nested_input_types(input_types)

Flattens nested column schema inputs into a single list.

generate_name(base_feature_names)

generate_names(base_feature_names)

get_args_string()

get_arguments()

get_description(input_column_descriptions[, ...])

get_filepath(filename)

get_function()

Attributes

base_of

base_of_exclude

commutative

compatibility

Additional compatible libraries

default_value

Default value this feature returns if no data found.

description_template

input_types

woodwork.ColumnSchema types of inputs

max_stack_depth

name

Name of the primitive

number_output_features

Number of columns in feature matrix associated with this feature

return_type

ColumnSchema type of return

series_library

stack_on

stack_on_exclude

stack_on_self

uses_calc_time

uses_full_dataframe