如何跳过numpy数组中的一个元素

时间:2015-02-05 15:29:42

标签: numpy

假设我有一个像:

这样的数组
from numpy import array
a = array([[[1,2,3]]])

如何进行正确的索引以获取如下的视图数组:

array([[[1,3]]])

2 个答案:

答案 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。所以它可以是有益的阅读。