w3resource

Python: Count the frequency of the elements of a given unordered list


32. Frequency of Unordered List

Write a Python program to count the frequency of the elements of a given unordered list.

Sample Solution:

Python Code:

from itertools import groupby

uno_list = [2,1,3,8,5,1,4,2,3,4,0,8,2,0,8,4,2,3,4,2]
print("Original list:")
print(uno_list)
uno_list.sort()
print(uno_list)
print("\nSort the said unordered list:")
print(uno_list)
print("\nFrequency of the elements of the said unordered list:")
result = [len(list(group)) for key, group in groupby(uno_list)]
print(result)

Sample Output:

Original list:
[2, 1, 3, 8, 5, 1, 4, 2, 3, 4, 0, 8, 2, 0, 8, 4, 2, 3, 4, 2]
[0, 0, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 8, 8, 8]

Sort the said unordered list:
[0, 0, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 8, 8, 8]

Frequency of the elements of the said unordered list:
[2, 2, 5, 3, 4, 1, 3]

For more Practice: Solve these Related Problems:

  • Write a Python program to count the frequency of each element in an unordered list using a dictionary comprehension and itertools.
  • Write a Python program to use itertools.groupby on a sorted version of an unordered list and return a frequency distribution.
  • Write a Python program to map a function that counts occurrences of each unique element in an unordered list and outputs a sorted frequency list.
  • Write a Python program to compute the frequency of elements in an unordered list and then filter out those with frequency below a given threshold.

Go to:


Previous: Write a Python program to count the frequency of consecutive duplicate elements in a given list of numbers. Use itertools module.
Next: Write a Python program to find the pairs of maximum and minimum product from a given list. Use itertools module.


Python Code Editor:


Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.