gpt4 book ai didi

Python:对 Counter 输出上的元素进行计数

转载 作者:行者123 更新时间:2023-11-30 23:06:58 25 4
gpt4 key购买 nike

我有一个嵌套列表:

 List1 = [[A,B,A,A],[C,C,B,B],[A,C,B,B]]..... so on

我使用计数器函数来计算嵌套列表中的元素数量:

for i,j in enumerate(List1):
print(Counter(j))

我得到以下输出:

Counter({'A': 3, 'B': 1})
Counter({'C': 2, 'B': 2})
Counter({'B': 2, 'A': 1, 'C': 1})
....

我想计算 A 在计数器输出中的百分比:

A = number of A's / total number of elements

例如:

Counter({'A': 3, 'B': 1})

会产生:

A = 3/4 = 0.75

我无法计算 A,有人可以帮我吗?

最佳答案

以下内容将为您提供包含每个条目的计数和百分比的字典列表:

List1 = [['A','B','A','A'],['C','C','B','B'],['A','C','B','B']]
counts = [Counter(x) for x in List1]
percentages = [{k : (v, v / float(len(l1))) for k,v in cc.items()} for l1, cc in zip(List1, counts)]

print percentages

给出以下输出:

[{'A': (3, 0.75), 'B': (1, 0.25)}, {'C': (2, 0.5), 'B': (2, 0.5)}, {'A': (1, 0.25), 'C': (1, 0.25), 'B': (2, 0.5)}]

仅查看百分比:

List1 = [['A','B','A','A'],['C','C','B','B'],['A','C','B','B']]
counts = [Counter(x) for x in List1]
percentages = [{k : v / float(len(l1)) for k,v in cc.items()} for l1, cc in zip(List1, counts)]

print percentages

给予:

[{'A': 0.75, 'B': 0.25}, {'C': 0.5, 'B': 0.5}, {'A': 0.25, 'C': 0.25, 'B': 0.5}]

关于Python:对 Counter 输出上的元素进行计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32432486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com