📜  Python|元组列元素频率

📅  最后修改于: 2022-05-13 01:54:46.135000             🧑  作者: Mango

Python|元组列元素频率

在Python中,我们需要处理各种形式的数据,其中之一是元组列表,我们可能必须在其中执行任何类型的操作。这篇特别的文章讨论了在元组列表中查找第 K 个元素的频率的方法。让我们讨论可以执行此操作的某些方式。

方法 #1:使用map() + count()
map函数可用于累积列表中所有元组的索引,并且可以使用Python库的通用计数函数来完成计算频率的任务。

# Python3 code to demonstrate
# Tuple Column element frequency
# using map() + count()
  
# initializing list of tuples
test_list = [(1, 'Geeks'), (2, 'for'), (3, 'Geeks')]
  
# printing the original list
print ("The original list is : " + str(test_list))
  
# initializing K 
K = 1
  
# using map() + count()
# Tuple Column element frequency
res = list(map(lambda i : i[K], test_list)).count('Geeks')
  
# printing result
print ("The frequency of element at Kth index is : " + str(res))
输出 :
The original list is : [(1, 'Geeks'), (2, 'for'), (3, 'Geeks')]
The frequency of element at Kth index is : 2

方法 #2:使用Counter() + 列表推导
列表理解执行获取元组的第 K 个元素的任务,计数部分由集合库的 Counter函数处理。

# Python3 code to demonstrate
# Tuple Column element frequency
# using Counter() + list comprehension
from collections import Counter
  
# initializing list of tuples
test_list = [(1, 'Geeks'), (2, 'for'), (3, 'Geeks')]
  
# printing the original list
print ("The original list is : " + str(test_list))
  
# initializing K 
K = 1
  
# using Counter() + list comprehension
# Tuple Column element frequency
res = Counter(i[K] for i in test_list)
  
# printing result
print ("The frequency of element at Kth index is : " + str(res['Geeks']))
输出 :
The original list is : [(1, 'Geeks'), (2, 'for'), (3, 'Geeks')]
The frequency of element at Kth index is : 2