首页 > 解决方案 > 根据 Pandas 中的列合并两行

问题描述

我有一个像这样的熊猫数据框:

   version    ids
0  001        {'id': '121'}
1  001        {'id': '122'}
2  002        {'id': '123'}

如何将ids的每个值转换为列表并基于相同的版本组合它们?这是我想要的:

   version    ids
0  001        [{'id': '121'}, {'id': '122'}]
1  002        [{'id': '123'}]

我试过分组:

df.groupby(['version'])['ids'].apply(','.join).reset_index()

但它并没有变成一个“列表”,这样做的正确方法是什么?提前致谢!!!

标签: pythonpandasmerge

解决方案


尝试

df.groupby(['version'])['ids'].agg(list).reset_index()

推荐阅读