数组和数字之间的最大值

时间:2018-10-09 11:53:40

标签: python arrays numpy max

使用时:

import numpy as np
A = np.array([1,2,-3,-1, 0,3,-1])
print [max(A[j], 0) for j in range(len(A))]

我们将根据需要获得[1, 2, 0, 0, 0, 3, 0]

如何直接使用numpy函数(例如np.max)获得相同的代码?

print max(A, 0)  # ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
print np.max(A, 0)  # 3
print np.max(A, 0, axis=0)  # argument axis not working
print np.amax(A, 0)  # 3

1 个答案:

答案 0 :(得分:2)

它只是np.maximum(A, 0)。与np.max函数相反,它接受两个参数,并逐元素进行比较。在您的情况下,由于第二个参数是标量值,因此比较会通过广播进行。