How to replace negative value with zero in numpy array with Python

4 Answers

0 votes
import numpy as np

arr = np.array([-5, -9, 6, -8, 1, 0, -4, 2, 7])
arr = [0 if x < 0 else x for x in arr]
arr = np.array(arr)

print(arr)
 
 
'''
run:
 
[0 0 6 0 1 0 0 2 7]
 
'''
 

 



answered Feb 14 by avibootz
0 votes
import numpy as np

def replace_negative_value(x):
   return 0 if x < 0 else x


arr = np.array([-5, -9, 6, -8, 1, 0, -4, 2, 7])
replace_negative_value_function = np.vectorize(replace_negative_value)
arr = replace_negative_value_function(arr)

print(arr)
 
 
'''
run:
 
[0 0 6 0 1 0 0 2 7]
 
'''
 

 



answered Feb 14 by avibootz
0 votes
import numpy as np

arr = np.array([-5, -9, 6, -8, 1, 0, -4, 2, 7])
arr = np.clip(arr, 0, None)

print(arr)


'''
run:
 
[0 0 6 0 1 0 0 2 7]
 
'''
 

 



answered Feb 14 by avibootz
0 votes
import numpy as np

arr = np.array([-5, -9, 6, -8, 1, 0, -4, 2, 7])
arr = np.where(arr < 0, 0, arr)

print(arr)


'''
run:
 
[0 0 6 0 1 0 0 2 7]
 
'''
 

 



answered Feb 14 by avibootz
...