Groups the elements of a list based on the given function and returns the count of elements in each group.
collections.defaultdict
to initialize a dictionary.map()
to map the values of the given list using the given function.from collections import defaultdict
def count_by(lst, fn = lambda x: x):
count = defaultdict(int)
for val in map(fn, lst):
count[val] += 1
return dict(count)
from math import floor
count_by([6.1, 4.2, 6.3], floor) # {6: 2, 4: 1}
count_by(['one', 'two', 'three'], len) # {3: 2, 5: 1}
Python, List
Groups the elements of a list based on the given function.
Python, List
Splits values into two groups, based on the result of the given filtering function.
Python, List
Returns the difference between two lists, after applying the provided function to each list element of both.