How to count the frequency of the elements in a list? # create a listimport collections x = ['A', 'A', 'B' ,'C', 'C', 'C', 'C', 'D', 'D', 'E'] # get frequencies c=collections.Counter(x) Counter({'C': 4, 'A': 2, 'D': 2, 'B': 1, 'E': 1}) c.keys() ['A', 'C', 'B', 'E', 'D'] c.values() [2, 4, 1, 1, 2] # print frequencies, sorted by list elements for item in sorted(c.keys()): print( item + ': ' + str(c[item]) ) A: 2 B: 1 C: 4 D: 2 E: 1 # print top 3 most frequent elements c.most_common(3) [('C', 4), ('A', 2), ('D', 2)] for k,n in
print(k + ': ' + str(n)) C: 4 A: 2 D: 2 # convert c into a dictionary d = dict(c) {'A': 2, 'C': 4, 'B': 1, 'E': 1, 'D': 2} # convert c into a list n = c.most_common() [('C', 4), ('A', 2), ('D', 2), ('B', 1), ('E', 1)] |
Data structures > Lists >