Python Count Duplicado en la lista

Python Count Duplicado en la lista
Tener duplicados en sus datos puede causar problemas graves, especialmente cuando se trabaja con grandes cantidades de datos para análisis de datos o procesamiento de datos. Por lo tanto, es deber del programador detectar duplicados y eliminarlos de los datos. Esta publicación se centrará en el primero y explicará los diferentes métodos a través de los cuales el usuario puede detectar y contar fácilmente duplicados dentro de una lista de Python.

El contenido de esta guía se da a continuación:

  • Método 1: Uso de la lista para establecer la conversión
  • Método 2: utilizando el método de comprensión y cuenta () de la lista
  • Método 3: Uso de la comprensión de la lista con la condición IF-no-in

Comencemos con el primer método de inmediato!

Método 1: Uso de la lista para establecer la conversión

Una lista en Python puede contener duplicados, lo que significa que no hay singularidad como la que se encuentra en Python Sets. Por lo tanto, una manera fácil de detectar si hay duplicados dentro de una lista de Python es convertirlo en un conjunto y comparar el tamaño de ambos.

Para demostrar esto, comience creando una lista en Python usando el siguiente código:

ListVar = [123,46,11,78,334,46,98,11,90]

Después de eso, use el método set () para convertir esta lista en un conjunto y almacenarla dentro de una variable separada:

setVar = set (listVar)

Imprima el número de elementos de ambos utilizando el método Len ():

Imprimir ("Elementos en la lista:", Len (ListVar))
Imprimir ("Elementos en el set:", Len (SetVar))

Cuando se ejecuta este código, produce los siguientes resultados en el terminal:

Según la salida, el número de elementos en la lista es 9 y 7 para el set. Esto significa que hay un total de dos duplicados en la lista. Pero, en lugar de calcular manualmente los duplicados, también puede usar la siguiente línea:

Imprimir ("Número de duplicados en la lista", Len (ListVar) -len (SetVar)))

El fragmento de código completo con esta nueva declaración de impresión es:

ListVar = [123,46,11,78,334,46,98,11,90]
setVar = set (listVar)
Imprimir ("Número de duplicados en la lista", Len (ListVar) -len (SetVar)))

Cuando se ejecuta este código, produce el siguiente resultado en el terminal:

Como puede ver en la imagen de salida, hay un total de dos duplicados en la lista.

Método 2: utilizando el método de comprensión y cuenta () de la lista

Otro método para imprimir los duplicados de una lista es mediante el método de comprensión de la lista para obtener cada valor de la lista y luego utilizando el método Count () para verificar su recuento dentro de la lista. Si el resultado del método count () es mayor que uno, entonces puede agregar ese elemento a una lista de duplicados.

Para demostrar el funcionamiento de este método, tome el siguiente código:

ListVar = [123,46,11,78,334,46,98,11,90]
duplicateVar = []
para x en listvar:
Si listVar.recuento (x)> 1:
duplicate.adjuntar (x)
Imprimir ("Los duplicados que se encuentran en la lista son:", DuplicateVar)

Cuando se ejecuta este código, produce el siguiente resultado en su terminal:

Como puede ver en la salida, los valores "46" y "11" estuvieron presentes dos veces cada uno.

Método 3: Uso de la comprensión de la lista con la condición IF-no-in

Otro método para encontrar duplicados en una lista es mediante la comprensión de la lista y aplicando la condición IF-no-in.

Tome el siguiente fragmento de código para este método:

ListVar = [123,46,11,78,334,46,98,11,90]
uniquelistvar = []
duplicateListVar = []
para x en listvar:
Si x no está en uniquelistvar:
Varina uniquelista.adjuntar (x)
demás:
duplicateListvar.adjuntar (x)
Imprimir ("La lista de elementos únicos es:", uniqueListvar)
Imprimir ("Los duplicados que se encuentran en la lista son:", duplicateListvar)

En este fragmento de código:

  • Se crean dos nuevas listas, una para almacenar cada valor único y una para almacenar cada valor de repetición/duplicado
  • Cada elemento se verifica con los valores almacenados dentro de la lista de valores única, y si aún no existe allí, entonces se agrega a él.
  • Si ya existe allí, entonces se agrega a la lista de valores duplicados.
  • Al final, imprima ambas listas en el terminal usando el método print ()

Cuando se ejecuta este código, produce el siguiente resultado en su terminal:

Desde la salida, se puede ver que los valores "46" y "11" fueron duplicados y, por lo tanto, solo una de sus instancias queda en la lista de valores únicos.

Conclusión

Para encontrar duplicados en una lista, el usuario puede utilizar diferentes enfoques que incluyen la conversión de la lista en una cadena, utilizando la comprensión de la lista con el método Count () o utilizando la condición IF-no-In con la comprensión de la lista. Sin embargo, el método más rápido para eliminar los duplicados de la lista es la conversión de la lista en un conjunto.