猿问

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

我有以下数据框


import pandas as pd

d = {'value': ['value1', 'value2', 'value3'], 'key': ['key1', 'key1', 'key2']}

df = pd.DataFrame(data=d)

我需要将其转换为以下形式的字典


{

'key1': ['value1', 'value2'], 

'key2': ['value2']

}

我尝试过df.to_dict(),但字典中的条目格式不正确。我怎样才能做到这一点?


慕妹3242003
浏览 96回答 1
1回答

梦里花落0921

让我们尝试一下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']}
随时随地看视频慕课网APP

相关分类

Python
我要回答