二维列表快速分组:不使用 pandas 的替代方案
在处理大型二维列表时,对列表进行分组是一个常见任务。然而,使用 pandas 等库可能会影响性能。本文将探讨如何不使用 pandas 快速高效地对二维列表进行分组。
分组算法
以下是分组算法的简要概述:
- 初始化一个空字典。
- 遍历列表,将列表中的元素作为键添加到字典中。
- עבור每个键,将关联值作为列表添加到字典中。
- 最后,将字典的值转换为列表。
代码实现
以下 python 代码实现了该算法:
def group_list_by_key(data): grouped_data = {} for k, v in data: if k not in grouped_data: grouped_data[k] = [] grouped_data[k].append(v) return list(grouped_data.values()) # 测试数据 data = [['a',33],['a',0],['a',12],['a',3],['b',3],['b',0],['b',77],['c',1],['c',2],['c',5],['c',0],['c',11],['c',19]] print(group_list_by_key(data))
结果
[[33, 0, 12, 3], [3, 0, 77], [1, 2, 5, 0, 11, 19]]