Introducción y uso de la función numpy.unique en Python

Insertar descripción de la imagen aquí

introducir

np.uniquees una función en la biblioteca NumPy que se utiliza para obtener valores únicos de una matriz y puede devolver información sobre estos valores únicos. La siguiente es np.uniqueuna introducción detallada a la función:

gramática:

unique_values = np.unique(arr, return_index=False, return_inverse=False, return_counts=False, axis=None)
  • arr: la matriz de entrada de la que se extraerán valores únicos.
  • return_index: Parámetro opcional, si se establece en Truedevuelve una matriz de índice que contiene el índice de la primera aparición de un valor único en la matriz de entrada. El valor predeterminado es False.
  • return_inverse: Parámetro opcional, si se establece en Truedevuelve una matriz de números enteros que contiene el índice de cada elemento de la matriz original en la matriz de valores únicos. Esto se puede utilizar para restaurar una matriz de valores únicos a la matriz original. El valor predeterminado es False.
  • return_counts: Parámetro opcional, si se establece en Truedevuelve una matriz de números enteros que contiene el número de veces que aparece cada valor único en la matriz de entrada. El valor predeterminado es False.
  • axis: Parámetro opcional que especifica en qué eje buscar valores únicos. El valor predeterminado es si no se especifica, Nonelo que significa buscar valores únicos en toda la matriz.

valor de retorno:

np.uniqueLa función devuelve una matriz NumPy que contiene valores únicos. Dependiendo de los parámetros establecidos, también puede devolver una o más matrices adicionales, como una matriz de índice, una matriz de índice inverso y una matriz de recuento.

Ejemplo:

import numpy as np

arr = np.array([3, 1, 2, 2, 3, 1, 4, 5, 5])

# 获取唯一值数组
unique_values = np.unique(arr)
# 输出: array([1, 2, 3, 4, 5])

# 获取唯一值的索引数组
unique_indices = np.unique(arr, return_index=True)[1]
# 输出: array([1, 2, 0, 6, 7], dtype=int64)

# 获取逆向索引数组,用于还原原始数组
inverse_indices = np.unique(arr, return_inverse=True)[1]
# 输出: array([2, 0, 1, 1, 2, 0, 3, 4, 4], dtype=int64)

# 获取唯一值的出现次数数组
value_counts = np.unique(arr, return_counts=True)[1]
# 输出: array([2, 2, 2, 1, 2], dtype=int64)

En el ejemplo anterior, np.uniquela función se usa para obtener un valor único y, opcionalmente, puede devolver el índice, el índice inverso y el recuento de ocurrencias, información que se puede usar en una variedad de tareas de análisis y procesamiento de datos.

Suplemento[1]

El propósito del código value_counts = np.unique(arr, return_counts=True)[1]es contar arrel número de apariciones de cada valor único en una matriz y almacenar los resultados en value_countsuna variable denominada .

Déjame explicarte cada parte de este código:

  1. np.unique(arr, return_counts=True): Esta parte llama a la np.uniquefunción NumPy y pasa los parámetros return_counts=True. Esto significa que la función devuelve una matriz que contiene los valores únicos y una matriz que contiene el número de apariciones de cada valor único.

  2. [1]: Esta parte extrae el segundo elemento del resultado devuelto por la función. En Python, la indexación de listas y matrices comienza desde 0, por lo que [1]significa obtener el segundo elemento en el resultado, que es la matriz que contiene el número de apariciones.

Entonces, el resultado final value_countses una arrmatriz NumPy que contiene el número de apariciones de cada valor único en la matriz. Por ejemplo, si arres [3, 1, 2, 2, 3, 1, 4, 5, 5], entonces value_countspuede ser [2, 2, 2, 1, 2], lo que indica que el número 1 aparece dos veces, el número 2 aparece dos veces, el número 3 aparece dos veces, el número 4 aparece una vez y el número 5 aparece dos veces. Esta información es útil para realizar estadísticas y analizar la frecuencia de valores en los datos.

Supongo que te gusta

Origin blog.csdn.net/weixin_74850661/article/details/132816963
Recomendado
Clasificación