以下是一个示例代码,演示如何按组求和和计数:
from collections import defaultdict
# 示例数据
data = [
{'group': 'A', 'value': 10},
{'group': 'B', 'value': 20},
{'group': 'A', 'value': 30},
{'group': 'B', 'value': 40},
{'group': 'C', 'value': 50}
]
# 使用defaultdict创建一个字典,用于存储每个组的求和和计数结果
result = defaultdict(lambda: {'sum': 0, 'count': 0})
# 遍历数据,按组进行求和和计数
for item in data:
group = item['group']
value = item['value']
result[group]['sum'] += value
result[group]['count'] += 1
# 输出每个组的求和和计数结果
for group, values in result.items():
print(f"Group {group}: sum={values['sum']}, count={values['count']}")
以上代码通过使用defaultdict
创建一个字典,其中每个组对应一个字典值,该字典值包含sum
和count
两个键。然后遍历数据,根据组将值累加到相应的sum
键,并将计数累加到count
键。最后输出每个组的求和和计数结果。
上一篇:按组求和的最大值
下一篇:按组求和列,作为新列