假设我有一个像:
这样的数组from numpy import array
a = array([[[1,2,3]]])
如何进行正确的索引以获取如下的视图数组:
array([[[1,3]]])
答案 0 :(得分:1)
确定,
刚刚找到解决方案。
b=range(3)
b.remove(1)
a[:,:, b]
答案 1 :(得分:0)
有一个np.delete
功能。与列表remove
不同,它不起作用。相反,它返回一个新数组。就像你的简单解决方案一样,它会生成一个包含要保留的项目的索引(对于更一般的条件,这样做)。
In [1222]: np.delete(a,1,-1)
Out[1222]: array([[[1, 3]]])
delete
代码相当长,但纯Python。所以它可以是有益的阅读。