Python Counter is a container that hold count of objects. It is used to count items available or exist in iterables. Counts are allowed to be any integer value including zero or negative counts.
Counter is a subclass of the dictionary. It represents data as a key and value. It inherits all the methods and properties of the dictionary. It allows to perform arithmetic and set operations. It can be used with any iterable which implements iteration protocol.
SyntaxFollowing is the syntax of the Python Counter−
class collections.Counter([iterable-or-mapping])Parameters
This data type accepts iterable as a parameter.
Return ValueThis data type returns counter object.
Initialization of CounterCounter is initialized by using iterables as the input value. Following are the different ways to initialize the Counter −
In the following example we have initialized the Counter in different ways −
from collections import Counter # With sequence of items print(Counter(['x','x','z','x','y','z','x','x','z','x'])) # with dictionary print(Counter({'y':3, 'z':5, 'x':2})) # with keyword arguments print(Counter(z=3, x=5, y=2))
Following is the output of the above code −
Counter({'x': 6, 'z': 3, 'y': 1}) Counter({'z': 5, 'y': 3, 'x': 2}) Counter({'x': 5, 'z': 3, 'y': 2})Example
Following is an basic example of the Counter in Python −
from collections import Counter # Create a list tuple1 = ('Python', 'Java', 'Python', 'C++', 'Python', 'Java') # Count distinct elements and print Counter a object print(Counter(tuple1))
Following is the output of the above code −
Counter({'Python': 3, 'Java': 2, 'C++': 1})Counter Values
We can also access all the keys, values and items of a counter using keys(), values() and items() methods.
ExampleHere, we have defined the Counter and found its key values, values and items −
from collections import Counter #defined Counter my_counter = Counter('xyzmnoxyzm') #Finding key values print(my_counter.keys()) #Finding values print(my_counter.values()) #Finding items print(my_counter.items())
Following is the output of the above code −
dict_keys(['x', 'y', 'z', 'm', 'n', 'o']) dict_values([2, 2, 2, 2, 1, 1]) dict_items([('x', 2), ('y', 2), ('z', 2), ('m', 2), ('n', 1), ('o', 1)])Methods in Counter
Following are the different methods defined in Counter() class −
Method Function update() Used to add an element or iterable into existing Counter total() Compute the sum of counts most_common() Return a list of the n most common elements and their counts from the most common to the least. If n is omitted or None, most_common() returns all elements in the counter elements() Return an iterator over elements repeating each as many times as its count. Elements are returned in the order first encountered. subtract() Elements are subtracted from an iterable or from another mapping (or counter). Python Counter.update() MethodThe update() method in Counter class is used to add the new elements to the counter.
ExampleHere, we have created an empty counter and added an elements with update() function and the Counter returns the elements with respective count −
from collections import Counter #empty counter var1 = Counter() #updated with elements var1.update([2,4,6,2,4,6,2,6]) print(var1) var1.update([2, 6, 4]) print(var1)
Following is the output of the above code −
Counter({2: 3, 6: 3, 4: 2}) Counter({2: 4, 6: 4, 4: 3})Python Counter.subtract() Method
The subtract() method in Counter class is used to perform the subtraction operation between the two counters. The subtraction of two counters can be zero or negative value −
ExampleHere, we have defined two counters, c1 and c2 and subtracted c2 from c1 −
from collections import Counter #defined counters c1 = Counter(A=4, B=3, C=10) c2 = Counter(A=10, B=3, C=4) #subtraction of c2 from cl c1.subtract(c2) print(c1)
Following is the output of the above code −
Counter({'C': 6, 'B': 0, 'A': -6})Python Counter.total() Method
The total() method in the Counter class is used to calculate the sum of all element counts within the counter.
ExampleHere, we have defined and list and converted to Counter and found the sum of all elements count −
from collections import Counter list1 = ['a', 'b', 'c', 'a', 'b', 'c', 'a'] count = Counter(list1).total() print("Total elements of the list :", count)
Following is the output of the above code −
Total elements of the list : 7Python Counter.most_common() Method
The most_common() method of the Counter class in Python is used to return a list of the n most common elements in a counter. It returns the elements in descending order of their counts, from most common to least common. If the n value is not specified, it will return all elements in the counter.
ExampleFollowing is an example of the most_common() method of Counter −
from collections import Counter tup1 = (2,56,13,4,2,10,13,2, ) count = Counter(tup1).most_common(2) print("Most common elements of the tuple :", count)
Following is the output of the above code −
Most common elements of the tuple : [(2, 3), (13, 2)]
python_modules.htm
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4