from collections import Counter
def remove_elements_repeated_less_than_N_times(lst, N):
element_times = Counter(lst)
return [e for e in lst if element_times[e] >= N]
lst = ['bb', 'zz', 'ff', 'bb', 'aa', 'dd', 'zz', 'ff', 'zz', 'ee', 'aa', 'ff', 'ff']
N = 3
print(remove_elements_repeated_less_than_N_times(lst, N))
'''
run:
['zz', 'ff', 'zz', 'ff', 'zz', 'ff', 'ff']
'''