logo

numpy.unique() a Python

El mòdul numpy de Python proporciona una funció per trobar elements únics en una matriu numpy. La funció numpy.unique() troba els elements únics d'una matriu i retorna aquests elements únics com una matriu ordenada. A part dels elements únics, també hi ha algunes sortides opcionals, que són les següents:

  • La sortida poden ser els índexs de la matriu d'entrada que donen els valors únics
  • La sortida poden ser els índexs de la matriu única que reconstrueixen la matriu d'entrada
  • La sortida pot ser una matriu del nombre de vegades que cada valor únic arriba a la matriu d'entrada.

Sintaxi

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

Paràmetres

Aquests són els paràmetres següents a la funció numpy.mean():

a: array_like

Aquest paràmetre defineix la matriu font que conté elements els valors únics dels quals es desitgen. La matriu s'aplanarà si no és una matriu 1-D.

Return_index: bool (opcional)

comanda push git

Si aquest paràmetre s'estableix en True, la funció retornarà els índexs de la matriu d'entrada (al llarg de l'eix especificat si es proporciona o a la matriu aplanada), que donarà lloc a la matriu única.

return_inverse: bool (opcional)

Si aquest paràmetre s'estableix en True, la funció també retornarà els índexs de la matriu d'entrada (al llarg de l'eix especificat si es proporciona o a la matriu aplanada), que es poden utilitzar per reconstruir la matriu d'entrada.

Return_counts: bool (opcional)

Si aquest paràmetre s'estableix True, la funció retornarà el nombre de vegades que cada element únic ha aparegut a la matriu d'entrada 'a'.

eix: int o Cap (opcional)

Aquest paràmetre defineix l'eix sobre el qual operar. Si no s'estableix aquest paràmetre, la matriu 'a' s'aplanarà. Si aquest paràmetre és un nombre enter, els subbarrays indexats per l'eix donat s'aplanaran i es tractaran com un element d'una matriu 1-D amb la dimensió de l'eix donat. Les matrius estructurades o les matrius d'objectes que contenen objectes no s'admeten si s'utilitza l'eix 'kwarg'.

Devolucions

Aquesta funció retorna quatre tipus de sortides que són les següents:

únic: ndarray

En aquesta sortida, es mostrarà un ndarray que contingui valors únics ordenats.

índexs_únics: ndarray (opcional)

com convertir un nombre enter en una cadena java

En aquesta sortida, es mostrarà un ndarray que conté els índexs de les primeres ocurrències dels valors únics de la matriu original. Aquesta sortida només es proporciona si return_index és True.

unique_inverse: ndarray (opcional)

En aquesta sortida, es mostrarà un ndarray que conté els índexs per reconstruir la matriu original a partir de la matriu única. Aquesta sortida només es proporciona si return_inverse és True.

comptes_únics: ndarray (opcional)

En aquesta sortida, es mostrarà un ndarray que conté el nombre de vegades que apareix cada un dels valors únics a la matriu original. Aquesta sortida només es proporciona si return_counts és True.

mapeig mecanografiat

Exemple 1:

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

Sortida:

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

En el codi anterior

  • Hem importat numpy amb el nom d'àlies np.
  • Hem declarat la variable 'a' i hem assignat el valor retornat de la funció np.unique().
  • Hem passat el nombre d'elements de la funció.
  • Finalment, hem intentat imprimir el valor de 'a'.

A la sortida, s'ha mostrat un ndarray, que conté elements únics.

Exemple 2:

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

Sortida:

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

Exemple 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 

Sortida:

 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 codi anterior

  • Hem importat numpy amb el nom d'àlies np.
  • Hem creat una matriu multidimensional 'a'.
  • Hem declarat la variable 'b' i hem assignat el valor retornat de la funció np.unique().
  • Hem passat la matriu multidimensional 'a' i l'eix com a 0 a la funció.
  • Finalment, hem intentat imprimir el valor de 'b'.

A la sortida, s'ha mostrat un ndarray que conté files úniques de la matriu font 'a'.

Exemple 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 

Sortida:

 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: quan establim l'eix com a 1, aquesta funció retorna les columnes úniques de la matriu font.

Exemple 5: utilitzeu 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] 

Sortida:

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

En el codi anterior

cadena a json java
  • Hem importat numpy amb el nom d'àlies np.
  • Hem creat una matriu 'a'.
  • Hem declarat la variable 'resultat' i 'índexs' i hem assignat el valor retornat de la funció np.unique().
  • Hem passat la matriu 'a' i hem establert return_index a True a la funció.
  • Finalment, hem intentat imprimir el valor de 'resultat', 'índexs' i elements de matriu, que indica els índexs ('a [índexs]').

A la sortida, s'ha mostrat un ndarray que conté els índexs de la matriu original que donen valors únics.

Exemple 6: utilitzeu return_inverse

Podem reconstruir la matriu d'entrada a partir dels valors únics de la següent 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] 

Sortida:

 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])