下面是一个示例代码,演示如何按照列表对列进行分类,并将结果进行聚合:
from collections import defaultdict
def classify_and_aggregate(lst):
# 创建一个空的字典用于存储分类结果
classified = defaultdict(list)
# 按照列表对列进行分类
for item in lst:
col = item[0] # 列的值
val = item[1] # 对应的值
classified[col].append(val)
# 对分类结果进行聚合
aggregated = {}
for col, vals in classified.items():
aggregated[col] = sum(vals) # 这里可以根据需要使用不同的聚合函数
return aggregated
# 示例输入
lst = [('A', 1), ('B', 2), ('A', 3), ('B', 4), ('C', 5)]
# 调用函数进行分类和聚合
result = classify_and_aggregate(lst)
# 输出结果
print(result)
运行上述代码,将得到以下输出:
{'A': 4, 'B': 6, 'C': 5}
在这个示例中,我们使用了defaultdict
来创建一个默认值为列表的字典classified
,将列表中的元素按照列进行分类。然后,我们遍历分类结果,使用sum
函数将每个列对应的值进行求和,得到最终的聚合结果。你可以根据具体需求自定义聚合函数来替换示例中的sum
函数。
上一篇:按照列表对csv文件进行分组
下一篇:按照列表对象的字段属性筛选列表