featuretools.primitives.ExpandingTrend#

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

计算给定窗口内事件的扩展趋势。

描述

给定一个日期时间列表,返回从当前行偏移 gap 行开始的扩展趋势。扩展原语计算给定时间点的原语值,使用直到该时间点的所有可用数据。

输入日期时间应为单调的。

参数:
  • gap (int, 可选) – 指定从每个实例向后偏移,作为可用数据开始之前的间隔。对应于行数。默认为 1。

  • min_periods (int, 可选) – 在窗口上执行计算所需的最小观测数量。默认为 1。

示例

>>> 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]

我们还可以控制扩展计算之前的间隔。

>>> 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]

我们还可以控制滚动计算所需的最小周期数。

>>> 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]#

方法

__init__([gap, min_periods])

flatten_nested_input_types(input_types)

将嵌套的列模式输入展平为单个列表。

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()

属性

base_of

base_of_exclude

commutative

默认值

如果找不到数据,此特征返回的默认值。

description_template

输入类型

woodwork.ColumnSchema 输入类型

max_stack_depth

名称

原语的名称

输出特征数量

与此特征关联的特征矩阵中的列数

返回类型

ColumnSchema 返回类型

stack_on

stack_on_exclude

stack_on_self

uses_calc_time

uses_full_dataframe