Please help me to get the counter for the list SS2 in list SS1 in PYTHON using from collections import Counter or any other fastest way
SS1 = [(1, 2, 3, 4, 5), (
Ok I am assuming what you want as your output here as you weren't clear. So basically what you want is to find the count of items in SS1 in SS2.
e.g. The number of times (1,4,5)
occuring in SS1
Which would be 3 i.e in (1, 2, 3, 4, 5)
,(1, 2, 4, 5, 6)
,(1, 3, 4, 5, 6)
so for (1, 2, 5)
it would be 3 again right? present in
(1, 2, 3, 4, 5),(1, 2, 3, 5, 6),(1, 2, 4, 5, 6)
I think what you might need is.
set(tuple2).issubset(tuple1)
So here is a code for your problem:
SS1 = [(1, 2, 3, 4, 5), (1, 2, 3, 4, 6), (1, 2, 3, 5, 6), (1, 2, 4, 5, 6), (1, 3, 4, 5, 6), (2, 3, 4, 5, 6)]
SS2=[(1, 2, 3), (1, 2, 4), (1, 2, 5), (1, 2, 6), (1, 3, 4), (1, 3, 5), (1, 3, 6), (1, 4, 5),
(1, 4, 6), (1, 5, 6), (2, 3, 4), (2, 3, 5), (2, 3, 6), (2, 4, 5), (2, 4, 6), (2, 5, 6),
(3, 4, 5), (3, 4, 6), (3, 5, 6), (4, 5, 6)]
count=0
count_list = []
for ss2item in SS2:
for ss1item in SS1:
if set(ss2item).issubset(ss1item):
count+=1
count_list.append(count)
count=0
print(count_list)
It's output would be a list of count for each items in SS2:
[3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]