我有一个维度为numpy
的多维a
数组(16, 13, 13, 3, 6)
,并且我只想拥有a[...,4:5] >0
中具有值的行,我如何只获取行从最后一个维度开始有a[...,4:5] > 0
?
>>> a.shape
>>>(16, 13, 13, 3, 6)
我尝试过:
a[..., a[...,4:5]> 0]
But, it gives the following error:
IndexError: boolean index did not match indexed array along dimension 4; dimension is 6 but the corresponding boolean dimension is 1
这是可以理解的,那我该怎么办? 我也尝试了以下答案: Delete rows from numpy array depending on a condition on a single cell
但是,它们不适用于我的情况。
另外,numpy中的a[...,4:5]
和a[...,4]
之间有什么区别,我以为它们是相同的,但是a[...,4:5].shape
返回(16, 13, 13, 3, 1)
的形状和{{1} }返回a[...,4].shape
形状。