logo

numpy.unique() en Python

El módulo numpy de Python proporciona una función para encontrar elementos únicos en una matriz numpy. La función numpy.unique() encuentra los elementos únicos de una matriz y los devuelve como una matriz ordenada. Además de los elementos únicos, también hay algunas salidas opcionales, que son las siguientes:

  • La salida pueden ser los índices de la matriz de entrada que dan los valores únicos
  • La salida pueden ser los índices de la matriz única que reconstruye la matriz de entrada.
  • La salida puede ser una matriz del número de veces que cada valor único aparece en la matriz de entrada.

Sintaxis

 numpy.unique(a, return_index=False, return_inverse=False, return_counts=False, axis=None) 

Parámetros

Estos son los siguientes parámetros en la función numpy.mean():

a: tipo matriz

Este parámetro define la matriz de origen que contiene elementos cuyos valores únicos se desean. La matriz se aplanará si no es una matriz unidimensional.

Índice de retorno: bool (opcional)

unirse a la actualización de mysql

Si este parámetro se establece en Verdadero, la función devolverá los índices de la matriz de entrada (a lo largo del eje especificado si se proporciona o en la matriz aplanada), lo que da como resultado una matriz única.

return_inverse: bool (opcional)

Si este parámetro se establece en Verdadero, la función también devolverá los índices de la matriz de entrada (a lo largo del eje especificado si se proporciona o en la matriz aplanada), que se pueden usar para reconstruir la matriz de entrada.

Return_counts: bool (opcional)

cuando comienza q2

Si este parámetro se establece en Verdadero, la función devolverá el número de veces que apareció cada elemento único en la matriz de entrada 'a'.

eje: int o Ninguno (opcional)

Este parámetro define el eje sobre el que operar. Si este parámetro no está configurado, la matriz 'a' se aplanará. Si este parámetro es un número entero, entonces los subarreglos indexados por el eje dado se aplanarán y se tratarán como un elemento de una matriz 1-D con la dimensión del eje dado. Las matrices estructuradas o las matrices de objetos que contienen objetos no se admiten si se utiliza el eje 'kwarg'.

Devoluciones

Esta función devuelve cuatro tipos de salidas que son las siguientes:

único: ndarray

En este resultado, se mostrará un ndarray que contiene valores únicos ordenados.

índices_únicos: ndarray (opcional)

En este resultado, se mostrará una matriz ndarray que contiene los índices de las primeras apariciones de los valores únicos en la matriz original. Este resultado solo se proporciona si return_index es Verdadero.

Unique_inverse: ndarray (opcional)

En este resultado, se mostrará un ndarray que contiene los índices para reconstruir la matriz original a partir de la matriz única. Esta salida solo se proporciona si return_inverse es Verdadero.

recuentos_únicos: ndarray (opcional)

En este resultado, se mostrará una matriz ndarray que contiene la cantidad de veces que cada uno de los valores únicos aparece en la matriz original. Este resultado solo se proporciona si return_counts es Verdadero.

dígito romano del 1 al 100

Ejemplo 1:

 import numpy as np a=np.unique([1,2,3,4,3,6,2,4]) a 

Producción:

 array([1, 2, 3, 4, 6]) 

En el código anterior

  • Hemos importado numpy con nombre de alias np.
  • Hemos declarado la variable 'a' y hemos asignado el valor devuelto de la función np.unique().
  • Hemos pasado el número de elementos de la función.
  • Por último, intentamos imprimir el valor de 'a'.

En el resultado, se muestra un ndarray que contiene elementos únicos.

Ejemplo 2:

 a=np.array([[1,2,2,3,9],[1,4,3,5,8]]) a b=np.unique(a) b 

Producción:

 array([[1, 2, 2, 3, 9], [1, 4, 3, 5, 8]]) array([1, 2, 3, 4, 5, 8, 9]) 

Ejemplo 3:

 import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 3, 4],[5, 9, 8],[2, 3, 4]]) a b=np.unique(a, axis=0) b 

Producción:

Python escribe json en un archivo
 array([[1, 1, 0], [1, 1, 0], [2, 3, 4], [5, 9, 8], [2, 3, 4]]) array([[1, 1, 0], [2, 3, 4], [5, 9, 8]]) 

En el código anterior

  • Hemos importado numpy con nombre de alias np.
  • Hemos creado una matriz multidimensional 'a'.
  • Hemos declarado la variable 'b' y hemos asignado el valor devuelto de la función np.unique().
  • Hemos pasado la matriz multidimensional 'a' y el eje como 0 en la función.
  • Por último, intentamos imprimir el valor de 'b'.

En el resultado, se muestra un ndarray que contiene filas únicas de la matriz fuente 'a'.

Ejemplo 4:

 import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 2, 4],[5, 5, 8],[2, 2, 4]]) a b=np.unique(a, axis=1) b 

Producción:

 array([[1, 1, 0], [1, 1, 0], [2, 2, 4], [5, 5, 8], [2, 2, 4]]) array([[0, 1], [0, 1], [4, 2], [8, 5], [4, 2]]) 

Nota: Cuando configuramos el eje como 1, esta función devuelve las columnas únicas de la matriz fuente.

Ejemplo 5: utilizar return_index

 import numpy as np a = np.array(['d', 'b', 'b', 'z', 'a']) result, indices=np.unique(a,return_index=True) result indices a[indices] 

Producción:

 array(['a', 'b', 'd', 'z'], dtype='|S1') array([4, 1, 0, 3], dtype=int64) array(['a', 'b', 'd', 'z'], dtype='|S1') 

En el código anterior

  • Hemos importado numpy con nombre de alias np.
  • Hemos creado una matriz 'a'.
  • Hemos declarado la variable 'resultado' y los 'índices' y asignamos el valor devuelto de la función np.unique().
  • Pasamos la matriz 'a' y configuramos return_index en True en la función.
  • Por último, intentamos imprimir el valor de 'resultado', 'índices' y elementos de matriz, lo que indica los índices ('a [índices]').

En el resultado, se muestra un ndarray que contiene los índices del array original que dan valores únicos.

Ejemplo 6: utilizar return_inverse

Podemos reconstruir la matriz de entrada a partir de los valores únicos de la siguiente manera:

 import numpy as np a = np.array([1, 2, 6, 4, 5, 3, 2]) result, indices=np.unique(a,return_inverse=True) result indices a[indices] 

Producción:

 array([1, 2, 3, 4, 5, 6]) array([0, 1, 5, 3, 4, 2, 1], dtype=int64) array([1, 2, 3, 4, 5, 6, 2])