假设我有一个Pandas数据框:
| id1 | id2 | attr1 | combo_id | perm_id |
| --- | --- | --- | --- | --- |
| 1 | 2 | [9606] | [1,2] | AB |
| 2 | 1 | [9606] | [1,2] | BA |
| 3 | 4 | [9606] | [3,4] | AB |
| 4 | 3 | [9606] | [3,4] | BA |
我想将具有相同combo_id的行聚合在一起,并使用该行的perm_id存储两行的信息。
| attr1 | combo_id |
| --- | --- |
| {'AB':[9606], 'BA': [9606]} | [1,2] |
| {'AB':[9606], 'BA': [9606]} | [3,4] |
如何使用groupby和聚合函数来执行这些操作?
我尝试使用perm_id将attribute1转换为dict。df['attr1'] = df.apply(lambda x: {x['perm_id']: x['attr1']})
然后我计划使用一些东西来合并同一组中的词典。df.groupby(['combo_id']).agg({ 'attr1': lambda x: {x**})
但这导致了KeyError:永久标识
有什么建议吗?
1条答案
按热度按时间hrysbysz1#
试试看:
印刷品: