You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FeatureTools新版适配问题:Relationship参数报错及旧代码修订咨询

解决FeatureTools新版本兼容问题及旧代码修改要点

1. 修复ft.Relationship构造错误

新版本FeatureTools的Relationship类需要明确传入四个必填参数,替代旧版本直接传列对象的写法:

  • parent_dataframe_name:父表的名称(即你添加到实体集的dataframe名称,这里是"clients")
  • parent_column_name:父表中作为关联键的列名(这里是"client_id")
  • child_dataframe_name:子表的名称(这里是"loans")
  • child_column_name:子表中对应父表关联键的列名(这里是"client_id")

正确代码:

r_client_previous = ft.Relationship(
    parent_dataframe_name="clients",
    parent_column_name="client_id",
    child_dataframe_name="loans",
    child_column_name="client_id"
)
# 别忘了将关系添加到实体集
es.add_relationship(r_client_previous)

2. 其他需修改的旧代码点

  • 替换entity_from_dataframe为add_dataframe:旧版本用于添加实体的entity_from_dataframe已被弃用,改用add_dataframe,参数名略有调整:
    旧代码:
    es.entity_from_dataframe(entity_id="clients", dataframe=clients, index="client_id")
    
    新版本代码:
    es.add_dataframe(dataframe_name="clients", dataframe=clients, index="client_id")
    
  • 检查dfs函数的参数兼容性:旧版本dfs的target_entity参数在新版本仍可用,但如果使用cutoff_time、cutoff_time_in_index等参数,需确保符合新版本要求;若遇到聚合/转换原语报错,需确认原语是否被重命名或移除。
  • 移除normalize_entity的旧用法:如果练习中使用了es.normalize_entity拆分实体,新版本建议通过add_dataframe手动添加拆分后的表,再建立关联关系替代。

内容的提问来源于stack exchange,提问作者jasonkim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 23:00:05