【问题标题】:featuretools: How to properly generate features for a regression taskfeaturetools:如何为回归任务正确生成特征
【发布时间】:2018-09-11 10:02:59
【问题描述】:

我想尝试 featuretools,但我需要一个提示,如何将我的数据集用于我的数据集。我在熊猫数据框中有数据,这是一个回归问题。

这是我的数据集的示例:

我做了什么:

import featuretools as ft
es = ft.EntitySet(id = 'train_X')
es = es.entity_from_dataframe(entity_id="train_X",
                                  dataframe=X,
                                  index="Index",
                        variable_types={
 "Market": ft.variable_types.Categorical,
 "Stock": ft.variable_types.Categorical,}
                                 )

feature_matrix_customers, features_defs = ft.dfs(entities=es,
                                           target_entity="y")

得到一个错误:

 KeyError: 'Entity 0 does not exist in train_X').

【问题讨论】:

  • 您是否尝试过文档中的入门指南? docs.featuretools.com/#minute-quick-start。如果您遇到问题或有任何困惑,请告诉我们。
  • @MaxKanter 当然,我更新了我的问题。
  • 目标实体应该是您在上面提供的ID。尝试将其设置为train_X。

标签: featuretools


【解决方案1】:

这里的问题很可能是您尝试直接使用 pandas 数据框作为输入,而不是将数据加载到 EntitySet 中。相反,您应该创建一个 EntitySet 并为此构建功能。您还可以将 EntitySet.enormalize_entity(...) 与 EntitySet 一起使用来创建其他实体以帮助特征工程。

请注意:您可能希望研究将 cutoff_times 与此数据类型一起使用,这将允许您指定哪些数据可以和不能用于生成特征。

【讨论】:

  • 请再次检查我的问题。
【解决方案2】:

试试这个。

feature_matrix_customers, features_defs = ft.dfs(entityset=es, entities=es, target_entity="train_X")

【讨论】:

    猜你喜欢
    • 2020-04-19
    • 2020-10-14
    • 2021-03-05
    • 2018-10-17
    • 2018-08-18
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多