在Python列表中找到给定元素的频率总和
给定的列表包含许多重复项。我们有兴趣找出列表中重复出现的某些此类项目的频率总和。以下是我们如何实现这一目标的方法。
和
我们有两个列表。一个具有值列表,另一个具有需要从第一个列表中检查其频率的值。因此,我们创建了一个for循环,以计算第一个列表中第二个列表中元素的出现次数,然后应用sum函数获得频率的最终和。
示例
chk_list= ['Mon', 'Tue']
big_list = ['Mon','Tue', 'Wed', 'Mon','Mon','Tue']
# Apply sum
res = sum(big_list.count(elem) for elem in chk_list)
# Printing output
print("Given list to be analysed: \n", big_list)
print("Given list to with values to be analysed:\n", chk_list)
print("Sum of the frequency: ", res)输出结果
运行上面的代码给我们以下结果-
Given list to be analysed: ['Mon', 'Tue', 'Wed', 'Mon', 'Mon', 'Tue'] Given list to with values to be analysed: ['Mon', 'Tue'] Sum of the frequency: 5
与collections.Counter
来自收集器的计数器功能可以通过将其应用到必须分析其值的列表中,同时遍历较小的列表(仅包含需要确定频率的元素)来获得所需的结果。
示例
from collections import Counter
chk_list= ['Mon', 'Tue']
big_list = ['Mon','Tue', 'Wed', 'Mon','Mon','Tue']
# Apply Counter
res = sum(Counter(big_list)[x] for x in chk_list)
# Printing output
print("Given list to be analysed: \n", big_list)
print("Given list to with values to be analysed:\n", chk_list)
print("Sum of the frequency: ", res)输出结果
运行上面的代码给我们以下结果-
Given list to be analysed: ['Mon', 'Tue', 'Wed', 'Mon', 'Mon', 'Tue'] Given list to with values to be analysed: ['Mon', 'Tue'] Sum of the frequency: 5
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短