Sintaxe:
entorpecido.onde (condição, [x, y])onde a função () pode receber dois argumentos. O primeiro argumento é obrigatório e o segundo argumento é opcional. Se o valor do primeiro argumento (doença) for verdadeiro, então a saída conterá os elementos da matriz da matriz, x caso contrário, da matriz, y. Esta função irá devolver os valores de índice do array de entrada se nenhum argumento opcional for usado.
Uso da função where ():
Diferentes tipos de operadores booleanos podem ser usados para definir a condição desta função. Os usos da função where a () com várias condições são mostrados nesta parte do tutorial.
Exemplo -1: uso de várias condições com OR lógico
O exemplo a seguir mostra o uso da função where () com e sem o argumento opcional. Aqui, o OR lógico foi usado para definir a condição. A primeira função where () foi aplicada em uma matriz unidimensional que retornará a matriz de índices da matriz de entrada onde a condição retornará Verdadeiro. A segunda função where () aplicada em duas matrizes unidimensionais irá recuperar os valores da primeira matriz quando a condição retornar True. Caso contrário, ele recuperará os valores da segunda matriz.
# Importar biblioteca NumPyimportar numpy como np
# Crie uma matriz usando a lista
np_array1 = np.matriz ([23, 11, 45, 43, 60, 18, 33, 71, 52, 38])
print ("Os valores da matriz de entrada: \ n", np_array1)
# Crie outra matriz com base em várias condições e uma matriz
new_array1 = np.onde ((np_array1 50))
# Imprime a nova matriz
print ("Os valores filtrados da matriz: \ n", new_array1)
# Crie uma matriz usando valores de intervalo
np_array2 = np.arange (40, 50)
# Crie outra matriz com base em várias condições e duas matrizes
new_array2 = np.onde ((np_array1 60), np_array1, np_array2)
# Imprime a nova matriz
print ("Os valores filtrados do array: \ n", new_array2)
Resultado:
A seguinte saída aparecerá após a execução do script acima. Aqui, a condição voltou Verdadeiro para os valores 23,11,18,33 e 38 da primeira matriz. A condição voltou Falso para os valores 45, 43, 60, 71 e 52. Portanto, 42, 43, 44 e 48 foram adicionados da segunda matriz para os valores 45, 43, 60 e 52. Aqui, 71 está fora do alcance.
Exemplo -2: Uso de várias condições com AND lógico
O exemplo a seguir mostra como a função () pode ser usada com as várias condições definidas por lógico e aplicadas em duas matrizes unidimensionais. Aqui, duas matrizes NumPy unidimensionais foram criadas usando a função rand (). Essas matrizes foram usadas na função where () com as várias condições para criar a nova matriz com base nas condições. A condição irá retornar Verdadeiro quando o valor da primeira matriz é menor que 40 e o valor da segunda matriz é maior que 60. A nova matriz foi impressa mais tarde.
# Importar biblioteca NumPyimportar numpy como np
# Crie duas matrizes de valores aleatórios
np_array1 = np.aleatória.rand (10) * 100
np_array2 = np.aleatória.rand (10) * 100
# Imprime os valores da matriz
print ("\ nOs valores da primeira matriz: \ n", np_array1)
print ("\ nOs valores da segunda matriz: \ n", np_array2)
# Crie uma nova matriz com base nas condições
new_array = np.onde ((np_array1 60), np_array1, np_array2)
# Imprime a nova matriz
print ("\ nOs valores filtrados de ambas as matrizes: \ n", new_array)
Resultado:
A seguinte saída aparecerá após a execução do script acima. A condição voltou Falso para todos os elementos. Portanto, a matriz retornada contém os valores da segunda matriz apenas.
Exemplo 3: Uso de várias condições na matriz multidimensional
O exemplo a seguir mostra como onde a função () pode ser usada com as várias condições definidas pela lógica E que será aplicado em duas matrizes multidimensionais. Aqui, duas matrizes multidimensionais foram criadas usando listas. Em seguida, essas funções foram aplicadas na função where () para criar a nova matriz com base na condição. A condição usada na função retornará Verdadeiro onde o valor da primeira matriz é par e o valor da segunda matriz é ímpar; caso contrário, a condição retornará Falso.
# Importar biblioteca NumPyimportar numpy como np
# Crie duas matrizes multidimensionais de valores inteiros
np_array1 = np.matriz ([[5, 12, 21, 6, 11], [6, 10, 15, 31, 8]])
np_array2 = np.matriz ([[43, 19, 7, 34, 9], [99, 22, 41, 5, 12]])
# Imprime os valores da matriz
print ("\ nOs valores da primeira matriz: \ n", np_array1)
print ("\ nOs valores da segunda matriz: \ n", np_array2)
# Crie uma nova matriz a partir de duas matrizes com base nas condições
new_array = np.onde (((np_array1% 2 == 0) & (np_array2% 2 == 1)), np_array1, np_array2)
# Imprime a nova matriz
print ("\ nOs valores filtrados de ambas as matrizes: \ n", new_array)
Resultado:
A seguinte saída aparecerá após a execução do script acima. Na saída, 43, 12, 7, 34, 9, 22, 41, 5 e 12 adicionaram na nova matriz da segunda matriz porque a condição é Falso para esses valores. Os primeiros 12 valores na nova matriz foram adicionados a partir da primeira matriz porque a condição é Verdadeiro para este valor apenas.
Conclusão:
onde a função () da biblioteca NumPy é útil para filtrar os valores de duas matrizes. A criação de uma nova matriz filtrando os dados de duas matrizes com base em várias condições definidas por OR lógico e AND lógico foi explicada neste tutorial. Espero que os leitores consigam usar esta função em seu script de maneira adequada após praticar os exemplos deste tutorial.