В списке python я хочу удалить все элементы, повторяющиеся меньше, чем 'k'.
например, если k == 3, то если наш список:
l = [a,b,c,c,c,a,d,e,e,d,d]
тогда вывод должен быть:
[c,c,c,d,d,d]
Какой быстрый способ сделать это (у меня большие данные), есть ли хорошие предложения по питону?
это то, что я кодировал, но я не думаю, что это самый быстрый и самый питонический способ:
from collections import Counter
l = ['a', 'b', 'c', 'c', 'c', 'a', 'd', 'e', 'e', 'd', 'd']
counted = Counter(l)
temp = []
for i in counted:
if counted[i] < 3:
temp.append(i)
new_l = []
for i in l:
if i not in temp:
new_l.append(i)
print(new_l)