如何从DataFrame的3列数据创建嵌套字典(dict of dicts)?
解决方案
方法一:用set_index + to_dict('index')(最简洁的内置方法)
直接借助pandas的API就能一步完成转换:
import pandas as pd df = pd.DataFrame({"id": [0, 1], "col1": [1.1, 2.2], "col2":[2.0, 3.0]}) d = df.set_index('id').to_dict('index')
执行后得到的d就是目标嵌套字典:
{0: {'col1': 1.1, 'col2': 2.0}, 1: {'col1': 2.2, 'col2': 3.0}}
方法二:手动迭代(适合理解底层逻辑)
如果想手动实现转换逻辑,可以遍历DataFrame的行来构建字典:
d = {} for _, row in df.iterrows(): d[row['id']] = {'col1': row['col1'], 'col2': row['col2']}
内容的提问来源于stack exchange,提问作者user1750101
相关产品推荐
相关产品推荐

