Python | Frequency grouping of list items



Method # 1: Using a Loop
This is a brute force method to accomplish this particular task. In this we repeat each element, check for its presence in another list, if so, then increase its number and put it in a tuple.

# Python3 code to demonstrate how it works
# Frequency of grouping list items
# using a loop

 
# initialize the list

test_list = [ 1 , 3 , 3 , 1 , 4 , 4 ]

< p>  
# print original list

print ( "The original list:" + str (test_list))

 
# Frequency of grouping list items
# using a loop

res = []

temp = dict ()

for ele in test_list :

if ele in temp:

temp [ele] = temp [ele] + 1  

else

temp [ele] = 1

for key in temp:

  res.append ((key, temp [key]))

 
# print result

print ( "Frequency of list elements:" + str (res))

Output:

 The original list: [1, 3, 3, 1, 4, 4] Frequency of list elements: [(1, 2), (3, 2), (4, 2)] 

Method # 2: Using Counter () + items ()
A combination of the two functions can be used to accomplish this task. They accomplish this task using built-in constructs and are shorthand for this task.

# Python3 code to demonstrate how it works
# Frequency of grouping list items
# using Counter () + items ()

from collections import Counter

 
# initialize the list

test_list = [ 1 , 3 , 3 , 1 , 4 , 4 ]

 
# print the original list

print ( "The original list: " + str (test_list))

 
# Frequency of grouping list items
# using Counter () + items ()

res = list (Counter (test_list) .items ())

  
# print result

print (< / code> "Frequency of list elements:" + str (res))

Output:

 The original list: [1, 3, 3, 1, 4, 4] Frequency of list elements: [(1, 2), (3, 2), (4, 2)]