featuretools.get_recommended_primitives#
- featuretools.get_recommended_primitives(entityset: EntitySet, include_time_series_primitives: bool = False, excluded_primitives: List[str] = ['count_string', 'distance_to_holiday', 'is_in_geobox', 'not_equal_scalar', 'equal_scalar', 'time_since', 'isin', 'multiply_boolean', 'numeric_lag', 'cum_count', 'cumulative_time_since_last_false', 'cumulative_time_since_last_true', 'diff', 'diff_datetime', 'is_first_occurrence', 'is_last_occurrence', 'time_since_previous', 'not', 'and', 'or', 'equal', 'not_equal']) List[str] [source]#
获取给定实体集的推荐图元列表。
- 描述
此函数的工作原理是:首先获取一个有效的图元列表,其中不包含 excluded_primitives 中指定的任何可应用于单表 EntitySet 的图元。其次,为非数值字段创建特征,并检查其非唯一性。如果特征是非唯一的,则将其添加到推荐列表中。然后,检查数值字段的偏度。根据列的偏斜程度,将推荐 square_root 或 natural_logarithm。最后,如果 include_time_series_primitives 被指定为 True,则将始终推荐 Lag,如果存在数值列,还将推荐所有 Rolling 和 Expanding 图元。
- 参数:
entityset (EntitySet) – 仅包含一个 dataframe 的 EntitySet。
include_time_series_primitives (bool) – 是否应考虑时间序列图元。默认为 False。
excluded_primitives (List[str]) – 从推荐中排除的转换图元列表。默认为 DEFAULT_EXCLUDED_PRIMITIVES。
注意
此函数的主要目标是推荐可能为建模过程提供重要特征的图元。非数值图元在主要作为从原始特征中提取信息的手段方面做得很好,这些原始特征本身可能意义不大(例如 NaturalLanguage、Datetime、LatLong)。这就是为什么它们是此函数的主要重点。数值转换图元非常依赖具体情况,因此很难从数学上量化应推荐哪些。因此,仅包含处理偏斜数值列的转换图元,因为这是一个标准且可量化的转换步骤。此规则的唯一例外是时间序列问题。由于只有极少数图元仅适用于时间序列,因此所有这些图元都包含在推荐的图元列表中。
注意
此函数目前仅适用于单表,并且只推荐转换图元。