Cómo contar los valores únicos en la lista Python

Jinku Hu 30 enero 2023
  1. Usar collections.counter para contar valores únicos en la lista Python
  2. Use la función set para contar los valores únicos en la lista Python
  3. Use numpy.unique para contar los valores únicos en la lista Python
Cómo contar los valores únicos en la lista Python

Este artículo presentará diferentes métodos para contar los valores únicos dentro de la lista. usando los siguientes métodos:

  • collections.Counter
  • set(listName)
  • np.unique(listName)

Usar collections.counter para contar valores únicos en la lista Python

collections es una biblioteca estándar de Python, y contiene la clase Counter para contar los objetos hashable.

La clase Counter tiene dos métodos:

  1. keys() devuelve los valores únicos de la lista.
  2. values() devuelve la cuenta de cada valor único de la lista.

Podemos usar la función len() para obtener el número de valores únicos pasando la clase Counter como argumento.

Códigos de ejemplo:

from collections import Counter

words = ["Z", "V", "A", "Z", "V"]

print(Counter(words).keys())
print(Counter(words).values())

print(Counter(words))

Resultado:

['V', 'A', 'Z']
[2, 1, 2]
3

Use la función set para contar los valores únicos en la lista Python

set es un tipo de datos de recolección no ordenada que es iterable, mutable, y no tiene elementos duplicados. Podemos obtener la longitud del set para contar los valores unqiue en la lista, después de convertir la lista en un set usando la función set().

Códigos de ejemplo:

words = ["Z", "V", "A", "Z", "V"]
print(len(set(words)))

Resultado:

3

Use numpy.unique para contar los valores únicos en la lista Python

numpy.unique devuelve los valores únicos del array de entrada como datos, y también devuelve el recuento de cada valor único si el parámetro return_counts está configurado como True.

Códigos de ejemplo:

import numpy as np

words = ["Z", "V", "A", "Z", "V"]

np.unique(words)

print(len(np.unique(words)))

Resultado:

3
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

Artículo relacionado - Python List