我需要将3d数组a
中的每个元素与2d数组b
进行比较,如果它们超过a
中的值,则更改b
中的值。
a.shape = 4000,5,5
b.shape = 5,5
在将a
中的所有元素与b
进行比较时,这为我提供了正确的结果:
a[a[:,:,:]>=b]=1
a[a[:,:,:]<b]=0
但是,我需要将此作为循环的一部分和a
的切片执行。在循环中,我将传递(start:end)值,例如:
a[a[10:25,:,:]>=b]=1
a[a[10:25,:,:]<b]=0
这引发了错误:
VisibleDeprecationWarning: boolean index did not match indexed
array along dimension 0; dimension is 4000 but corresponding
boolean dimension is 15 if __name__ == '__main__':
结果对于我需要的是正确的,但是在没有引发错误的情况下是这样做的,或者是什么方式?
谢谢