Busca de Matriz NumPy
- Página Anterior Divisão de Matrizes NumPy
- Próxima Página Ordenação de Matriz NumPy
搜索数组
您可以在数组中搜索(检索)某个值,然后返回获得匹配的索引。
要搜索数组,请使用 where()
方法。
Exemplo
查找值为 4 的索引:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 4, 4]) x = np.where(arr == 4) print(x)
上例会返回一个元组:(array([3, 5, 6],)
意思就是值 4 出现在索引 3、5 和 6。
Exemplo
查找值为偶数的索引:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 0) print(x)
Exemplo
查找值为奇数的索引:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 1) print(x)
搜索排序
有一个名为 searchsorted()
的方法,该方法在数组中执行二进制搜索,并返回将在其中插入指定值以维持搜索顺序的索引。
假定 searchsorted()
Este método é usado para ordenar arrays.
Exemplo
Encontrar o índice onde deve ser inserido o valor 7:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7) print(x)
Explicação do Exemplo:O número 7 deve ser inserido no índice 1 para manter a ordem.
Este método começa a procurar do lado esquerdo e retorna o primeiro índice onde o número 7 já não é maior do que o próximo valor.
Procurar do Lado Direito
Pelo padrão, retorna o índice mais à esquerda, mas podemos especificar side='right'
para retornar o índice mais à direita.
Exemplo
Procurar o índice onde deve ser inserido o valor 7, começando do lado direito:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7, side='right') print(x)
Explicação do Exemplo:O número 7 deve ser inserido no índice 2 para manter a ordem.
Este método começa a procurar do lado direito e retorna o primeiro índice onde o número 7 já não é menor do que o próximo valor.
Múltiplos Valores
Para procurar múltiplos valores, use um array com os valores especificados.
Exemplo
Encontrar os índices onde devem ser inseridos os valores 2, 4 e 6:
import numpy as np arr = np.array([1, 3, 5, 7]) x = np.searchsorted(arr, [2, 4, 6]) print(x)
O valor retornado é um array:[1 2 3]
Contém três índices, onde 2, 4 e 6 serão inseridos no array original para manter a ordem.
- Página Anterior Divisão de Matrizes NumPy
- Próxima Página Ordenação de Matriz NumPy