Python | Ordene la lista dada por frecuencia y elimine los duplicados

Los problemas asociados con la clasificación y eliminación de duplicados son bastante comunes en el dominio del desarrollo y también en la codificación general. Se ha discutido la clasificación por frecuencia, pero a veces, incluso deseamos eliminar los duplicados sin usar más LOC y de una manera más corta. Vamos a discutir ciertas formas en que esto se puede hacer.

Método #1: Usar count() + set() + sorted()

La función sorted se puede usar para ordenar los elementos como se desee, la frecuencia se puede calcular usando la función de conteo y la eliminación de duplicados se puede manejar usando la función set.

# Python3 code to demonstrate
# sorting and removal of duplicates
# Using sorted() + set() + count()
  
# initializing list
test_list = [5, 6, 2, 5, 3, 3, 6, 5, 5, 6, 5]
  
# printing original list
print("The original list : " + str(test_list))
  
# using sorted() + set() + count()
# sorting and removal of duplicates
res = sorted(set(test_list), key = lambda ele: test_list.count(ele))
  
# print result
print("The list after sorting and removal : " + str(res))
Producción :

The original list : [5, 6, 2, 5, 3, 3, 6, 5, 5, 6, 5]
The list after sorting and removal : [2, 3, 6, 5]

Método #2: Usar Counter.most_common()+ comprensión de lista

Si uno tiene un caso de uso particular de clasificación por orden decreciente de frecuencia, también puede usar la función más común de la biblioteca Counter para obtener la parte de frecuencia.

# Python3 code to demonstrate
# sorting and removal of duplicates
# Using Counter.most_common() + list comprehension
from collections import Counter
  
# initializing list
test_list = [5, 6, 2, 5, 3, 3, 6, 5, 5, 6, 5]
  
# printing original list
print("The original list : " + str(test_list))
  
# using Counter.most_common() + list comprehension
# sorting and removal of duplicates
res = [key for key, value in Counter(test_list).most_common()]
  
# print result
print("The list after sorting and removal : " + str(res))
Producción :

The original list : [5, 6, 2, 5, 3, 3, 6, 5, 5, 6, 5]
The list after sorting and removal : [5, 6, 3, 2]

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *