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

如何将pandas DataFrame转换为以A列值为键的指定结构字典

你可以先将A列设置为DataFrame的行索引,再调用to_dict方法并指定orient='index'参数即可实现需求,完整代码如下:

import pandas as pd

d = {
    'A': ['a1', 'a2', 'a3', 'a4', 'a5'],
    'B': ['b1', 'b2', 'b3', 'b4', 'b5'],
    'C': ['c1', 'c2', 'c3', 'c4', 'c5'],
    'D': ['d1', 'd2', 'd3', 'd4', 'd5'],
    'E': ['e1', 'e2', 'e3', 'e4', 'e5'],
    'F': ['f1', 'f2', 'f3', 'f4', 'f5'],
    'G': ['g1', 'g2', 'g3', 'g4', 'g5'],
    'H': ['h1', 'h2', 'h3', 'h4', 'h5'],
}
df = pd.DataFrame(d)

# 核心转换逻辑
out = df.set_index('A').to_dict(orient='index')
  • 你之前使用的orient='records'得到的是[{'A':'a1','B':'b1',...}, {'A':'a2',...}]格式的列表,不符合你要的外层键为A列值的结构,orient='index'参数会将行索引作为外层字典的键,每行其余列的键值对作为内层字典,刚好匹配你的需求。
  • 你贴出的目标输出中H列的值为对应G列的值,属于和原始数据不一致的手误,如果确实需要该效果,可以在转换前增加一行代码修改H列的值:
df['H'] = df['G']

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 08:24:01