为了账号安全,请及时绑定邮箱和手机立即绑定

使用值作为键将数据帧转换为字典

使用值作为键将数据帧转换为字典

慕妹3242003 2023-10-11 16:04:24
我有以下数据框import pandas as pdd = {'value': ['value1', 'value2', 'value3'], 'key': ['key1', 'key1', 'key2']}df = pd.DataFrame(data=d)我需要将其转换为以下形式的字典{'key1': ['value1', 'value2'], 'key2': ['value2']}我尝试过df.to_dict(),但字典中的条目格式不正确。我怎样才能做到这一点?
查看完整描述

1 回答

?
梦里花落0921

TA贡献1772条经验 获得超6个赞

让我们尝试一下groupby:


df.groupby('key')['value'].agg(list).to_dict()

# run time

# 897 µs ± 50.2 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

或者:


{k:list(x) for k,x in df.groupby('key')['value']}

# run time

# 376 µs ± 14.8 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

输出:


{'key1': ['value1', 'value2'], 'key2': ['value3']}


查看完整回答
反对 回复 2023-10-11
  • 1 回答
  • 0 关注
  • 95 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信