API 参考#

演示数据集#

load_retail([id, nrows, return_single_table])

返回零售实体集示例.

load_mock_customer([n_customers, ...])

返回模拟客户数据的数据帧

load_flight([month_filter, ...])

下载、清理并筛选2017年的航班数据.

load_weather([nrows, return_single_table])

加载澳大利亚每日最低气温天气数据集.

深度特征合成#

dfs([dataframes, relationships, entityset, ...])

计算特征矩阵和特征,给定数据框字典和关系列表.

get_valid_primitives(entityset, ...[, ...])

返回两个基元列表(转换和聚合),这些基元可以应用于特定的目标数据框以创建特征.如果未使用可选的'selected_primitives'参数,将考虑所有可发现的基元.

时间增量#

Timedelta(value[, unit, delta_obj])

表示时间的差异.

时间工具#

make_temporal_cutoffs(instance_ids, cutoffs)

生成一组在输入截止时间和实例ID之前的等间隔截止时间.

特征基元#

基元类型#

TransformPrimitive()

为数据框中的一个或多个其他特征创建的基于该数据框的特征.

AggregationPrimitive()

聚合基元#

All()

计算列表中所有值是否都为"True”.

Any()

确定列表中是否有值为 'True'.

AvgTimeBetween([unit])

计算连续事件之间的平均秒数.

Count()

确定总数值数量,排除`NaN`.

CountAboveMean([skipna])

计算高于均值的数值个数.

CountBelowMean([skipna])

确定低于均值的数值数量.

CountGreaterThan([threshold])

确定大于可控阈值的数值数量.

CountInsideNthSTD([n])

确定位于前N个标准差(含)内的观测值数量.

CountInsideRange([lower, upper, skipna])

确定落在某个范围内的数值数量.

CountLessThan([threshold])

确定小于可控阈值的数值数量.

CountOutsideNthSTD([n])

确定位于前N个标准差之外的观测值数量.

CountOutsideRange([lower, upper, skipna])

确定落在某个范围之外的值的数量.

Entropy([dropna, base])

计算分类列的熵

First()

确定列表中的第一个值.

Last()

确定列表中的最后一个值.

Max()

计算最大值,忽略 NaN 值.

MaxConsecutiveFalse()

确定输入中连续False值的最大数量

MaxConsecutiveNegatives([skipna])

确定输入中连续负值的最大数量

MaxConsecutivePositives([skipna])

确定输入中连续正数值的最大数量

MaxConsecutiveTrue()

确定输入中连续True值的最大数量

MaxConsecutiveZeros([skipna])

确定输入中连续零值的最大数量

Mean([skipna])

计算一组数值的平均值.

Median()

确定一组数值中的中间值.

Min()

计算忽略 NaN 值的最小值.

Mode()

确定最常重复的值.

NMostCommon([n])

确定最常见的`n`个元素.

NumConsecutiveGreaterMean([skipna])

确定最长的均值以上子序列的长度.

NumConsecutiveLessMean([skipna])

确定低于均值的最长子序列的长度.

NumTrue()

统计`True`值的数量.

NumUnique([use_string_for_pd_calc])

确定不同值的数量,忽略 NaN 值.

PercentTrue()

确定`True`值的百分比.

Skew()

计算一个分布与正态分布的差异程度.

Std()

计算相对于均值的离散度,忽略 NaN.

Sum()

计算总和,忽略 NaN.

TimeSinceFirst([unit])

计算自第一个日期时间以来的时间(以秒为单位).

TimeSinceLast([unit])

计算自上一个日期时间以来的时间(默认以秒为单位).

TimeSinceLastFalse()

计算自上次`False`值以来的时间.

TimeSinceLastMax()

计算自最大值出现以来的时间.

TimeSinceLastMin()

计算自最小值出现以来的时间.

TimeSinceLastTrue()

计算自上次`True`值以来的时间.

Trend()

计算某一列随时间变化的趋势.

转换基元#

二元转换基元#

AddNumeric()

对两个列表进行元素逐项相加.

AddNumericScalar([value])

将标量加到列表中的每个值上.

DivideByFeature([value])

将一个标量除以列表中的每个值.

DivideNumericScalar([value])

将列表中的每个元素除以一个标量.

Equal()

判断一个列表中的值是否等于另一个列表中的值.

EqualScalar([value])

确定列表中的值是否等于给定的标量.

GreaterThan()

判断一个列表中的值是否大于另一个列表中的值.

GreaterThanEqualTo()

确定一个列表中的值是否大于或等于另一个列表中的值.

GreaterThanEqualToScalar([value])

确定值是否大于或等于给定的标量.

GreaterThanScalar([value])

判断值是否大于给定的标量.

LessThan()

判断一个列表中的值是否小于另一个列表中的值.

LessThanEqualTo()

确定一个列表中的值是否小于或等于另一个列表中的值.

LessThanEqualToScalar([value])

确定值是否小于或等于给定的标量.

LessThanScalar([value])

确定值是否小于给定的标量.

ModuloByFeature([value])

计算标量对列表中每个元素的模.

ModuloNumeric()

对两个列表进行逐元素取模运算.

ModuloNumericScalar([value])

计算列表中每个元素对给定标量的模.

MultiplyBoolean()

对两个布尔值列表进行逐元素乘法运算.

MultiplyNumericBoolean()

对数值列表与布尔值列表进行逐元素乘法运算.

MultiplyNumericScalar([value])

将列表中的每个元素乘以一个标量.

NotEqual()

确定一个列表中的值是否与另一个列表中的值不相等.

NotEqualScalar([value])

确定列表中的值是否不等于给定的标量.

ScalarSubtractNumericFeature([value])

从给定的标量中减去列表中的每个值.

SubtractNumeric([commutative])

对两个列表进行逐元素相减操作.

SubtractNumericScalar([value])

从列表中的每个元素减去一个标量.

组合特征#

IsIn([list_of_outputs])

确定一个值是否存在于提供的列表中.

And()

Performs element-wise logical AND of two lists.

Or()

对两个列表进行逐元素逻辑或运算.

Not()

取反布尔值.

累积变换原语#

Diff([periods])

计算列表中当前值与前一个值之间的差值.

DiffDatetime([periods])

计算列表中一个日期时间与前一个日期时间之间的时间差.

TimeSincePrevious([unit])

计算列表中自上一个条目以来的时间.

CumCount()

计算累积计数.

CumSum()

计算累积和.

CumMean()

计算累积平均值.

CumMin()

计算累积最小值.

CumMax()

计算累积最大值.

日期时间变换原语#

Age()

计算给定出生日期的年龄(以浮点数表示的年份).

DateToHoliday([country])

将实例的时间转换为对应的节假日名称(如果有).

DateToTimeZone()

确定日期时间的时区.

Day()

确定从日期时间对象中的月份日期.

DayOfYear()

确定给定日期时间的一年中的第几天

DaysInMonth()

确定给定日期时间所在月份的天数.

DistanceToHoliday([holiday, country])

计算距离指定假日的天数.

Hour()

确定一个datetime对象的小时值.

IsFederalHoliday([country])

确定给定日期时间是否为联邦假日.

IsLeapYear()

确定日期时间列的is_leap_year属性.

IsLunchTime([lunch_hour])

判断一个日期时间是否在可配置的午餐时间内,基于24小时制.

IsMonthEnd()

确定日期时间列的is_month_end属性.

IsMonthStart()

确定日期时间列的is_month_start属性.

IsQuarterEnd()

确定日期时间列的is_quarter_end属性.

IsQuarterStart()

确定日期时间列的is_quarter_start属性.

IsWeekend()

判断一个日期是否为周末.

IsWorkingHours([start_hour, end_hour])

判断一个日期时间是否在24小时制的工作时间内.可以配置start_hour和end_hour.

IsYearEnd()

判断一个日期是否为年末.

IsYearStart()

判断一个日期是否为一年的开始.

Minute()

确定一个datetime对象的分钟值.

Month()

确定一个datetime对象的月份值.

PartOfDay()

确定日期时间的一天中的时段.

Quarter()

确定日期时间列所属的季度(1, 2, 3, 4)

Season()

确定给定日期时间的季节.

Second()

确定一个datetime对象的秒数值.

Week()

确定从日期时间值中的年份周数.

Weekday()

确定日期时间值的星期几.

Year()

确定一个datetime对象的年份值.

电子邮件和URL变换原语#

EmailAddressToDomain()

确定电子邮件的域名

IsFreeEmailDomain()

确定电子邮件地址是否来自免费电子邮件域.

URLToDomain()

确定URL的域名.

URLToProtocol()

确定一个URL的协议(http或https).

URLToTLD()

确定一个URL的顶级域名.

指数变换原语#

ExponentialWeightedAverage([com, span, ...])

计算一系列数字的指数加权移动平均值

ExponentialWeightedSTD([com, span, ...])

计算一系列数字的指数加权移动标准差

ExponentialWeightedVariance([com, span, ...])

计算一系列数字的指数加权移动方差

通用变换原语#

AbsoluteDiff([method, limit])

计算列表中数字与前一个元素的绝对差值.

Absolute()

计算一个数的绝对值.

Cosine()

计算一个数的余弦值.

IsNull()

判断一个值是否为空.

NaturalLogarithm()

计算一个数的自然对数.

Negate()

取反一个数值.

Percentile()

确定列表中每个值的百分位排名.

RateOfChange()

计算每秒的变化率.

SameAsPrevious([fill_method, limit])

确定列表中的一个值是否等于前一个值.

Sine()

计算一个数的正弦值.

SquareRoot()

计算一个数的平方根.

Tangent()

计算一个数的正切值.

Variance()

计算一组数字的方差.

位置变换原语#

CityblockDistance([unit])

计算城市道路网格中各点之间的距离.

GeoMidpoint()

确定两个坐标的中心点.

Haversine([unit])

计算两个LatLong列之间的近似Haversine距离.

IsInGeoBox([point1, point2])

确定坐标是否在由两个角点定义的矩形框内.

Latitude()

返回LatLong元组列表中的第一个元组值.

Longitude()

返回LatLong元组列表中的第二个元组值.

自然语言转换原语#

CountString([string, ignore_case, ...])

确定给定字符串在文本字段中出现的次数.

MeanCharactersPerWord()

确定每个单词的平均字符数.

MedianWordLength([delimiters_regex])

确定中位单词长度.

NumCharacters()

计算给定字符串中的字符数,包括空白字符和标点符号.

NumUniqueSeparators([separators])

计算唯一分隔符的数量.

NumWords()

确定字符串中的单词数量.单词是由空白字符分隔的字符序列.

NumberOfCommonWords([word_set, delimiters_regex])

确定字符串中常见单词的数量.

NumberOfHashtags()

确定字符串中的话题标签数量.

NumberOfMentions()

确定字符串中的提及数量.

NumberOfUniqueWords([case_insensitive])

确定字符串中唯一单词的数量.

NumberOfWordsInQuotes([quote_type])

确定字符串中引号内单词的数量.

PunctuationCount()

确定字符串中的标点符号数量.

TitleWordCount()

确定字符串中标题词的数量.

TotalWordLength([do_not_count])

确定总字长.

UpperCaseCount()

计算文本中大写字母的数量.

UpperCaseWordCount()

确定字符串中完全大写的单词数量.

WhitespaceCount()

计算字符串中的空格数量.

邮政编码原语#

OneDigitPostalCode()

返回给定邮政编码的一位数前缀.

TwoDigitPostalCode()

返回给定邮政编码的前两位数字.

时间序列转换原语#

ExpandingCount([gap, min_periods])

计算给定窗口内事件的扩展计数.

ExpandingMax([gap, min_periods])

计算给定窗口内事件的扩展最大值.

ExpandingMean([gap, min_periods])

计算给定窗口内事件的扩展均值.

ExpandingMin([gap, min_periods])

计算给定窗口内事件的扩展最小值.

ExpandingSTD([gap, min_periods])

计算给定窗口内事件的扩展标准差.

ExpandingTrend([gap, min_periods])

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

Lag([periods])

将一组值按指定的周期数进行移位.

RollingCount([window_length, gap, min_periods])

确定在给定窗口上的事件滚动计数.

RollingMax([window_length, gap, min_periods])

确定给定窗口内条目的最大值.

RollingMean([window_length, gap, min_periods])

计算给定窗口内数值的均值.

RollingMin([window_length, gap, min_periods])

确定给定窗口内条目的最小值.

RollingOutlierCount([window_length, gap, ...])

确定在给定窗口内有多少值是异常值.

RollingSTD([window_length, gap, min_periods])

计算给定窗口内数据的标准差.

RollingTrend([window_length, gap, min_periods])

计算给定时间窗口内某一列数据的趋势.

特征方法#

FeatureBase.rename(name)

重命名特征,返回副本.将把任何自定义特征列名称重置为默认值.

FeatureBase.get_depth([stop_at])

返回特征的深度

特征计算#

calculate_feature_matrix(features[, ...])

计算给定实例ID和计算时间的矩阵.

特征描述#

describe_feature(feature[, ...])

生成一个特征的英文描述.

特征可视化#

graph_feature(feature[, to_file, description])

生成给定特征的血缘关系图

特征编码#

encode_features(feature_matrix, features[, ...])

编码分类特征

特征选择#

remove_low_information_features(feature_matrix)

选择至少有2个唯一值且不全为空的特征

移除高度相关特征 移除高度缺失特征 移除单一值特征

特征矩阵工具#

replace_inf_values(feature_matrix[, ...])

替换特征矩阵中所有 np.inf 值为指定的替换值.

保存和加载特征#

save_features(features[, location, profile_name])

将特征列表保存为JSON到指定的文件路径/S3路径,写入一个已打开的文件,或返回序列化的特征作为JSON字符串.如果没有提供文件,则返回一个字符串.

load_features(features[, profile_name])

Loads the features from a filepath, S3 path, URL, an open file, or a JSON formatted string.

EntitySet, 关系#

构造函数#

EntitySet([id, dataframes, relationships])

存储实体集的所有实际数据和类型信息

Relationship(entityset, ...)

表示数据框之间关系的类

EntitySet 加载和准备数据#

EntitySet.add_dataframe(dataframe[, ...])

将带有 Woodwork 类型信息的 DataFrame 添加到 EntitySet 中.

EntitySet.add_interesting_values([...])

查找或设置分类列的有趣值,用于生成"where”子句

EntitySet.add_last_time_indexes([...])

计算每个数据框的最后时间索引值(观察到该实例或其子实例的最后时间).

EntitySet.add_relationship([...])

在实体集中添加数据框之间的新关系.可以通过传递数据框和列名称或传递 Relationship 对象来指定关系.

EntitySet.add_relationships(relationships)

向实体集中添加多个新关系

EntitySet.concat(other[, inplace])

将实体集与另一个实体集合并,以创建一个包含两个实体集数据的新实体集.

EntitySet.normalize_dataframe(...[, ...])

创建一个新的数据框和关系,基于现有列中的唯一值.

EntitySet.set_secondary_time_index(...)

设置实体集中数据框的辅助时间索引,使用其数据框名称.

EntitySet.replace_dataframe(dataframe_name, df)

替换EntitySet表的内部数据框,保持Woodwork类型信息不变.

EntitySet 序列化#

read_entityset(path[, profile_name])

读取实体集从磁盘、S3路径或URL.

EntitySet.to_csv(path[, sep, encoding, ...])

将实体集以CSV格式写入磁盘,路径由`path`指定.

EntitySet.to_pickle(path[, compression, ...])

将entityset以pickle格式写入,位置由`path`指定.

EntitySet.to_parquet(path[, engine, ...])

将实体集以parquet格式写入磁盘,位置由`path`指定.

EntitySet 查询方法#

EntitySet.__getitem__(dataframe_name)

获取实体集中数据框实例

EntitySet.find_backward_paths(...)

生成器,生成从起点到目标数据框之间的所有反向路径.不包括包含循环的路径.

EntitySet.find_forward_paths(...)

生成器,用于生成从一个起点到目标数据框之间的所有前向路径.不包括包含循环的路径.

EntitySet.get_forward_dataframes(dataframe_name)

获取与数据框具有前向关系的数据框

EntitySet.get_backward_dataframes(dataframe_name)

获取与数据框存在反向关系的数据框

EntitySet.query_by_values(dataframe_name, ...)

查询具有给定值的列的实例

EntitySet 可视化#

EntitySet.plot([to_file])

创建一个类似于UML图的EntitySet图.

关系属性#

Relationship.parent_column

父数据框中的列

Relationship.child_column

子DataFrame中的列

Relationship.parent_dataframe

父数据框对象

Relationship.child_dataframe

子数据框对象

数据类型工具方法#

list_logical_types()

Returns a dataframe describing all of the available Logical Types.

list_semantic_tags()

Returns a dataframe describing all of the common semantic tags.

原语工具方法#

get_recommended_primitives(entityset[, ...])

获取给定实体集的推荐基元列表.

list_primitives()

返回一个DataFrame,用于列出和描述每个内置基元.

summarize_primitives()

返回一个包含 list_primitives 中所有基元的指标汇总 DataFrame.