1
我有这样的简化的方案在阵列替换值,其满足以下条件:在阵列替换值与条件
formula1=2*2
formula2=5*2
formula3=4*4
array = np.random.rand(2,4,10)
for n,i in enumerate(array):
if i>0.5: #find value in array with this condition
formula = formula1
array[n] = array[n]*formula #replace the found value with this value
elif i <0.1:
formula = formula2
array[n] = array[n]*formula
else:
formula = formula3
array[n] = array[n]*formula
print array
它导致错误消息:“数组的真值与多于一个的元素是暧昧。使用a.any()或a.all()'。任何建议?
你能添加完整回溯? – syntonym
@syntonym if i <0.5: ValueError:具有多个元素的数组的真值是不明确的。使用a.any()或a.all() –
在for循环中,'i'是一个数组。你如何确定一个数组是否小于给定值? any()检查数组中的任何元素是否小于给定值,all()会检查所有元素是否为 – SvbZ3r0