我有如下列表
[['H1','L', '1']
['H1','S', '1']
['H2','L', '1']
['H2','L', '1']]
并希望基于 column1 和 column2 进行分组。 python 是否在列表中提供了我可以获得以下结果的任何内容
H1 L 1
H1 S 1
H2 L 2
最佳答案
您可以使用 itertools.groupby
, 并对每组的最后一列求和。
from itertools import groupby
out = []
for k, v in groupby(l, key=lambda x: x[:2]):
s = sum([int(x[-1]) for x in v])
out.append(k + [s])
print (out)
# [['H1', 'L', 1], ['H1', 'S', 1], ['H2', 'L', 2]]
关于python - Groupby 列表中的多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48619098/