我有这样一个数据框
ID A B
1 3 5
1 4 2
1 0 4
2 2 1
2 4 5
2 9 3
3 2 1
3 4 6
我尝试使用代码将它们从 stackoverflow 中的其他帖子转换过来
df.set_index('ID').T.to_dict('list')
但它给了我一个只有一个列表值的每个 ID 的返回值
{'1': [3,5], '2': [2,1], '3': [2,1]}
这样的口述有可能吗?
{'1': ([3,5],[4,2],[0,4]), '2': ([2,1],[4,5],[9,3]), '3': ([2,1],[4,6])}
字典键返回 ID,每个 ID 与一个元组列表组合,每个元组包含两个值。
最佳答案
In [150]: df.groupby('ID')['A','B'].apply(lambda x: x.values.tolist()).to_dict()
Out[150]:
{'1': [[3, 5], [4, 2], [0, 4]],
'2': [[2, 1], [4, 5], [9, 3]],
'3': [[2, 1], [4, 6]]}
关于python - 如何使用一个键将多个列表值的数据框制作成python中的字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47025365/