HOWTO · NumPy
Contar valores únicos na matriz NumPy
A função numpy.unique() pode ser usada para determinar o número de ocorrências de cada elemento exclusivo dentro de um array NumPy em Python.
Este tutorial irá apresentar como contar ocorrências de valores únicos dentro de um array NumPy.
Contar valores exclusivos na matriz NumPy com a função numpy.unique()
Para contar o número de ocorrências de cada elemento único no array numpy, podemos usar a função numpy.unique(). Ele pega a matriz como um argumento de entrada e retorna todos os elementos exclusivos dentro do array em ordem crescente. Podemos especificar o parâmetro return_counts como True para também obter o número de vezes que cada elemento é repetido dentro do array. Veja o seguinte exemplo de código.
import numpy as np
array = np.array([1, 1, 1, 2, 3, 4, 4, 4])
unique, counts = np.unique(array, return_counts=True)
result = np.column_stack((unique, counts))
print(result)
Resultado:
[[1 3]
[2 1]
[3 1]
[4 3]]
Primeiro criamos um array NumPy com a função np.array(). Em seguida, armazenamos todos os elementos únicos da array dentro do array unique e seu respectivo número de ocorrências dentro do array counts com a função np.unique(). Em seguida, compactamos as duas matrizes 1D unique e counts dentro de uma única matriz 2D result com a função np.column_stack().