Python
I have a list of lists. like
A = [[x,y],[a,b],[c,f],[e,f],[a,b],[x,y]]
I want to count how many times each list occurred i
You can use collections.Counter - a dict subclass - to take the counts. First, convert the sublists to tuples to make them usable (i.e. hashable) as dictionary keys, then count:
from collections import Counter
count = Counter(map(tuple, A))
Just use Counter
from collections
:
from collections import Counter
A = [[x,y],[a,b],[c,f],[e,f],[a,b],[x,y]]
new_A = map(tuple, A) #must convert to tuple because list is an unhashable type
final_count = Counter(new_A)
#final output:
for i in set(A):
print i, "=", final_count(tuple(i))
Depending on your output, you can loop
through a set
of your list
and print each item with its count()
from the original list
:
for x in set(map(tuple, A)):
print '{} = {}'.format(x, A.count(list(x)))