У меня есть такой список
L = [['16.37.123.153','119.222.456.130','38673','161','17','62','4646'],
['16.37.456.153','119.222.123.112','56388','161','17','62','4646'],..]
И я хочу получить 5 наиболее часто встречающихся элементов этого списка с collection.counter.
Когда я использую это решение:
mostfrequentelements, counterofelements = zip(*Counter(L).most_common(5))
Я получаю ошибку:
Traceback (most recent call last):
File "hypergraph.py", line 65, in <module>
mostfrequent, countermfi = zip(*Counter(L).most_common(5))
File "/usr/lib/python2.7/collections.py", line 477, in __init__
self.update(*args, **kwds)
File "/usr/lib/python2.7/collections.py", line 567, in update
self[elem] = self_get(elem, 0) + 1
TypeError: unhashable type: 'list'
Как я могу использовать ее для моего типа списка?Мне нужно решение с оптимальной временной сложностью.
Ввод:
L = [['16.37.123.153','119.222.456.130','38673','161','17','62','4646'],
['16.37.456.153','119.222.123.112','56388','161','17','62','4646'],..]
Ввод:
Mostfrequentlelements = list of 5 most occuring sublists
Counter = list of the occurence counts of the 5 sublists
Заранее спасибо, Привет:)