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

如何将LangChain Pandas DataFrame Agent输出存入变量并实现数据映射?

跨DataFrame生成食物-类别映射表的实现方案

一、基础Pandas实现(替代DataFrame Agent)

1. 初始化示例DataFrame

import pandas as pd

# 构建Table 1数据
df_food = pd.DataFrame({
    "ID": [1, 2, 3],
    "Food items": ["Apple", "Celery", "Chicken"]
})

# 构建Table 2数据
df_category = pd.DataFrame({
    "ID": [1, 2, 3],
    "Categories": ["Vegetable", "Fruit", "Meat"]
})

2. 关联生成映射表

通过ID字段关联两个表,提取需要的映射列:

# 按ID内连接两个表,确保只保留匹配的记录
merged_df = df_food.merge(df_category, on="ID", how="inner")

# 生成最终映射表,调整列名更直观
mapping_df = merged_df[["Food items", "Categories"]].rename(
    columns={"Food items": "Food", "Categories": "Category"}
)

注:如果示例中ID对应的类别需要调整(比如Apple对应Fruit),只需修正df_category中的ID与类别对应关系后重新执行即可。

3. 输出为可回读格式

保存为Pandas可直接读取的Pickle格式

Pickle会完整保留DataFrame的结构和数据类型,适合后续Python直接调用:

# 保存映射表
mapping_df.to_pickle("food_category_mapping.pkl")

# 回读示例
loaded_df = pd.read_pickle("food_category_mapping.pkl")

保存为通用JSON格式

JSON格式兼容性强,也可轻松转回DataFrame:

# 保存为格式化的JSON(records格式便于后续解析)
mapping_df.to_json("food_category_mapping.json", orient="records", indent=2)

# 回读示例
loaded_json_df = pd.read_json("food_category_mapping.json")

二、其他替代实现方案

1. 使用Pandas join方法(基于索引关联)

如果将ID设为两个表的索引,可使用join简化操作:

# 设置ID为索引
df_food.set_index("ID", inplace=True)
df_category.set_index("ID", inplace=True)

# 关联生成映射表
mapping_df = df_food.join(df_category)[["Food items", "Categories"]].rename(
    columns={"Food items": "Food", "Categories": "Category"}
)

2. 手动构建映射字典(小数据量场景)

数据量较小时,可直接构建字典后转换为目标格式:

# 生成食物到ID的映射
food_to_id = df_food.set_index("Food items")["ID"].to_dict()
# 生成ID到类别的映射
id_to_category = df_category.set_index("ID")["Categories"].to_dict()
# 生成最终食物-类别字典
food_category_map = {food: id_to_category[food_to_id[food]] for food in food_to_id}

# 转换为DataFrame
mapping_df = pd.DataFrame(food_category_map.items(), columns=["Food", "Category"])

# 保存为JSON
import json
with open("food_category_mapping.json", "w") as f:
    json.dump(food_category_map, f, indent=2)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 15:00:55