我有一个N维数组= X,我想检查X中的每个值是否大于0.35。我写道: -
for number in X:
if (.35> number): # Here error occurs
print (enumerate(number))
但是我收到了这个错误:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
我想保存X中每个小于0.35的值的索引
答案 0 :(得分:2)
使用NumPy时,您必须始终努力在矢量空间中操作。这意味着不写for
循环,也不写in
等等。
对于您目前的情况,您可以这样做:
print(X[X < 0.35])
这比写循环要快得多。如果必须在不同的行上打印它们,您可以:
values = X[X < 0.35]
np.savetxt(sys.stdout, values)