Búsqueda de array en NumPy
- Página anterior División de array en NumPy
- Página siguiente Ordenamiento de array en NumPy
buscar en el array
Puede buscar (recuperar) un valor en el array y luego devolver los índices coincidentes.
Para buscar en el array, utilice where()
método.
Ejemplo
encontrar los índices de valores 4:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 4, 4]) x = np.where(arr == 4) print(x)
en el ejemplo anterior se devolverá una tupla:(array([3, 5, 6],
lo que significa que el valor 4 aparece en los índices 3, 5 y 6.
Ejemplo
encontrar los índices de valores pares:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 0) print(x)
Ejemplo
encontrar los índices de valores impares:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 1) print(x)
ordenamiento de búsqueda
hay un nombre llamado searchsorted()
método, que realiza una búsqueda binaria en el array y devuelve el índice en el que se insertará el valor especificado para mantener el orden de búsqueda.
asumir searchsorted()
Este método se utiliza para ordenar arrays.
Ejemplo
Buscar el índice donde se debe insertar el valor 7:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7) print(x)
Ejemplo de explicación:El número 7 debe insertarse en el índice 1 para mantener el orden.
Este método comienza a buscar desde la izquierda y devuelve el primer índice donde el número 7 ya no es mayor que el siguiente valor.
Búsqueda desde la derecha
Por defecto, devuelve el índice más a la izquierda, pero podemos especificar side='right'
para devolver el índice más a la derecha.
Ejemplo
Buscar el índice donde se debe insertar el valor 7, comenzando desde la derecha:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7, side='right') print(x)
Ejemplo de explicación:El número 7 debe insertarse en el índice 2 para mantener el orden.
Este método comienza a buscar desde la derecha y devuelve el primer índice donde el número 7 ya no es menor que el siguiente valor.
Valores múltiples
Para buscar múltiples valores, utilice un array con valores específicos.
Ejemplo
Buscar los índices donde se deben insertar los valores 2, 4 y 6:
import numpy as np arr = np.array([1, 3, 5, 7]) x = np.searchsorted(arr, [2, 4, 6]) print(x)
El valor de retorno es un array:[1 2 3]
Incluye tres índices, entre los cuales se insertarán 2, 4, 6 en el array original para mantener el orden.
- Página anterior División de array en NumPy
- Página siguiente Ordenamiento de array en NumPy