python - 如何使用一个键将多个列表值的数据框制作成python中的字典?

标签 python pandas dictionary dataframe pandas-groupby

我有这样一个数据框

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/

相关文章:

Python 3-x 使用类似 SQL 的条件从 CSV 表中选择列和行

python - 值错误 : invalid literal for int() with base 10: b'1\n5\n'

python - Python中Elasticsearch相对时间范围查询

python - pandas:将数据帧减少到仅出现特定的事件链

python - 如何将 Period 字符串转换为实际的 Period 类型

python - 如何通过类层次结构聚合字典 (Python)

python - 将 .png 图像转换为 base64

Python 显示 ['variable' ] 不在索引中,但 'variable' 在

r - 绘制因子级别

Python - 如果字典中的值那么