python初学者在这里。我有一个可能很简单的问题,但我无法弄清楚。
让我们说我有一个numpy数组:
a = np.array([1,2,3,4,5])
我想将每个元素乘以2,但是将结果限制为最大,例如6。所以我的结果将是数组([2,3,6,6,6])
但是,当我这样做时:
b = min(6, a * 2)
我收到此错误:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
我一直在做一些阅读,我可以理解为什么需要a.any()或a.all(),但我不知道如何实现这一点。我可以通过遍历a
并将条件分别传递给每个项目来避免错误,但是这似乎效率很低。这是我的实际数组的简化版本,其形状为(27,360,720),因此遍历每个单个元素听起来并不正确。有一个好的解决方案吗?