首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Featuretools -无法在Entityset中添加关系

Featuretools -无法在Entityset中添加关系
EN

Stack Overflow用户
提问于 2022-02-04 12:14:32
回答 1查看 189关注 0票数 0

我正在用这是Kaggle的数据写笔记本。下面是两个表的屏幕截图,以显示我们在这两个表中都有ID列。

下面是我在尝试设置实体集并添加关系时的代码。

代码语言:javascript
复制
import featuretools as ft 
import pandas as pd

es = ft.EntitySet()
es = es.add_dataframe(dataframe=train_sampled, index='new_index', dataframe_name='application', make_index=True)
es = es.add_dataframe(dataframe=bureau, index='new_index', dataframe_name='bureau', make_index=True)

new_relationship = ft.Relationship(entityset=es,parent_dataframe_name='application',parent_column_name='SK_ID_CURR',
                    child_dataframe_name='bureau',child_column_name='SK_ID_CURR')
es = es.add_relationship(new_relationship)

这是我所犯的错误,这是毫无意义的。

KeyError:'DataFrame application.SK_ID_CURR>在实体集中不存在‘

Entityset存在,但不能添加关系,这就是其中的要点。

任何建议或指导都是非常感谢的。

编辑:解决方案--这段代码使用下面的答案加上将bureau表中的索引列更改为唯一的索引列。

代码语言:javascript
复制
es = ft.EntitySet()
es = es.add_dataframe(dataframe=train_sampled, index='SK_ID_CURR', dataframe_name='application', make_index=False)
es = es.add_dataframe(dataframe=bureau, index='SK_ID_BUREAU', dataframe_name='bureau', make_index=False)

new_relationship = ft.Relationship(entityset=es,parent_dataframe_name='application',parent_column_name='SK_ID_CURR',
                    child_dataframe_name='bureau',child_column_name='SK_ID_CURR')
es = es.add_relationship(relationship=new_relationship)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-04 13:41:47

如果要通过传入一个EntitySet对象向Relationship添加关系,则需要确保在调用中使用relationship关键字,如下所示:

代码语言:javascript
复制
es.add_relationship(relationship=new_relationship)

在不使用relationship关键字的情况下,该方法期望传入四个值,指示parent_dataframe_nameparent_column_namechild_dataframe_namechild_column_name。使用这种方法,您可以跳过创建Relationship对象并添加如下关系:

代码语言:javascript
复制
es.add_relationship('application', 'SK_ID_CURR', 'bureau', 'SK_ID_CURR')

最后,还可以使用EntitySet.add_relationships方法添加关系,通过传入一个Relationship对象列表,可以向EntitySet添加一个或多个关系:

代码语言:javascript
复制
es.add_relationships([new_relationship])

有关所有这些方法和预期参数的更多详细信息,您始终可以参考Featuretools参考

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70986231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档