Como substituir valores negativos por zero no numpy
Você pode usar a seguinte sintaxe básica para substituir valores negativos por zero no NumPy:
my_array[my_array < 0 ] = 0
Esta sintaxe funciona com matrizes NumPy 1D e 2D.
Os exemplos a seguir mostram como usar essa sintaxe na prática.
Exemplo 1: Substitua valores negativos por zero em uma matriz NumPy 1D
O código a seguir mostra como substituir todos os valores negativos por zero em um array NumPy:
import numpy as np
#create 1D NumPy array
my_array = np. array ([4, -1, 6, -3, 10, 11, -14, 19, 0])
#replace negative values with zero in array
my_array[my_array < 0 ] = 0
#view updated array
print (my_array)
[4 0 6 0 10 11 0 19 0]
Observe que todo valor negativo na matriz original foi substituído por zero.
Exemplo 2: Substitua valores negativos por zero em uma matriz NumPy 2D
Suponha que temos o seguinte array NumPy 2D:
import numpy as np
#create 2D NumPy array
my_array = np. array ([3, -5, 6, 7, -1, 0, -5, 9, 4, 3, -5, 1]). reshape (4.3)
#view 2D NumPy array
print (my_array)
[[ 3 -5 6]
[ 7 -1 0]
[-5 9 4]
[3 -5 1]]
Podemos usar o seguinte código para substituir todos os valores negativos por zero no array NumPy:
#replace all negative values with zero in 2D array
my_array[my_array < 0 ] = 0
#view updated array
print (my_array)
[[3 0 6]
[7 0 0]
[0 9 4]
[3 0 1]]
Observe que todos os valores negativos na matriz 2D original foram substituídos por zero.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns no NumPy:
Como preencher um array NumPy com valores
Como remover elementos específicos do array NumPy
Como substituir elementos em um array NumPy
Como obter uma linha específica de um array NumPy