以下是一个示例代码,用于按照每个组出现的值构建计数列:
from collections import Counter
def count_values_per_group(groups):
# 使用Counter计数每个组出现的值
counts = Counter(groups)
# 构建计数列
count_list = [counts[group] for group in groups]
return count_list
# 示例输入
groups = ['A', 'A', 'B', 'B', 'B', 'C']
# 调用函数并打印结果
print(count_values_per_group(groups))
输出:
[2, 2, 3, 3, 3, 1]
在这个示例中,我们首先使用Counter
类从groups
列表中计数每个组的出现次数。然后,我们使用列表解析,根据每个组在counts
中的计数,构建了一个新的计数列count_list
。最后,我们返回了计数列作为结果。
请注意,这个示例假设groups
列表中的元素已经按照组的顺序排列。如果列表中的元素顺序是随机的,你可能需要先对列表进行排序,以确保计数列的顺序是正确的。
下一篇:按照每个组的大小拆分数据框