如何将pandas DataFrame转换为指定格式的自定义字典/JSON对象
实现步骤
首先我们先明确对应DataFrame结构(从你期望的输出反推,表中包含Name、水果名称列、priority、Count四列),直接按以下步骤操作即可:
- 先导入依赖库,构造/读取你的DataFrame,以下是对应你场景的示例构造代码,你可以直接替换成自己的读表逻辑:
import pandas as pd import json # 示例DataFrame,和你截图中的数据完全对应 df = pd.DataFrame({ 'Name': ['Max', 'Max', 'Max'], 'Fruits': ['Apple', 'Oranges', 'Banana'], 'priority': ['High', 'Medium', 'Low'], 'Count': ['4', '2', '1'] })
- 组装目标结构后转JSON:
# 提取姓名信息 result = { "Name": {"id": df['Name'].iloc[0]}, # 重命名水果列为id,筛选指定字段后转字典列表 "Favorites": df.rename(columns={"Fruits": "id"})[["id", "priority", "Count"]].to_dict(orient="records") } # 生成格式化JSON字符串 json_output = json.dumps(result, indent=2, ensure_ascii=False) print(json_output)
如果你的原表中水果对应的列名不是Fruits,替换rename方法里的键为你实际的列名即可。如果需要把JSON写入本地文件,补充一行代码json.dump(result, open("output.json", "w"), indent=2, ensure_ascii=False)即可。
内容的提问来源于stack exchange,提问作者Koustav Das
相关产品推荐
相关产品推荐

