En este artículo, analicemos cómo encontrar el valor más cercano y el índice en una array con NumPy. Numpy proporciona un objeto de array multidimensional de alto rendimiento y herramientas para trabajar con estas arrays. Haremos uso de dos de las muchas funciones proporcionadas por la biblioteca NumPy para calcular el valor más cercano y el índice en la array. Esas dos funciones son numpy.abs() y numpy.argmin() . El enfoque para encontrar el valor más cercano y el índice en la array se proporciona a continuación:
Acercarse:
- Tome una array, digamos, arr[] y un elemento, digamos x, al cual tenemos que encontrar el valor más cercano.
- Llame a la función numpy.abs(d), con d como la diferencia entre el elemento de la array yx, y almacene los valores en una array de diferencia, digamos difference_array[].
- El elemento que proporcione la diferencia mínima será el más cercano al valor especificado.
- Use numpy.argmin() para obtener el índice del elemento más pequeño en difference_array[]. En el caso de múltiples valores mínimos, se devolverá la primera aparición.
- Imprime el elemento más cercano y su índice de la array dada.
Veamos los siguientes ejemplos basados en el enfoque anterior.
Ejemplo 1:
Python3
import numpy as np # array arr = np.array([8, 7, 1, 5, 3, 4]) print("Array is : ", arr) # element to which nearest value is to be found x = 2 print("Value to which nearest element is to be found: ", x) # calculate the difference array difference_array = np.absolute(arr-x) # find the index of minimum element from the array index = difference_array.argmin() print("Nearest element to the given values is : ", arr[index]) print("Index of nearest value is : ", index)
Producción:
En el ejemplo anterior, hemos tomado una array de la que necesitamos encontrar el elemento más cercano al valor especificado. El valor especificado es 2. Restamos el valor dado de cada elemento de la array y almacenamos el valor absoluto en una array diferente. La mínima diferencia absoluta corresponderá al valor más cercano al número dado. En nuestro ejemplo, (2-1) produce 1. Por lo tanto, el índice de diferencia absoluta mínima es 2 y el elemento de la array original en el índice 2 es 1. Por lo tanto, 1 es el más cercano al número dado, es decir, 2.
Ejemplo 2:
Python3
import numpy as np # array arr = np.array([12, 40, 65, 78, 10, 99, 30]) print("Array is : ", arr) # element to which nearest value is to be found x = 85 print("Value to which nearest element is to be found: ", x) # calculate the difference array difference_array = np.absolute(arr-x) # find the index of minimum element from the array index = difference_array.argmin() print("Nearest element to the given values is : ", arr[index]) print("Index of nearest value is : ", index)
Producción:
En el ejemplo anterior, hemos tomado una array de la que necesitamos encontrar el elemento más cercano al valor especificado. El valor especificado es 85. Restamos el valor dado de cada elemento de la array y almacenamos el valor absoluto en una array diferente. La mínima diferencia absoluta corresponderá al valor más cercano al número dado. En el ejemplo anterior, (78-85) produce 7. Por lo tanto, el índice de diferencia mínima absoluta es 3 y el elemento de la array original en el índice 3 es 78. Por lo tanto, 78 es el más cercano al número dado, es decir, 85.
Publicación traducida automáticamente
Artículo escrito por rohanchopra96 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA