一个有趣的问题:删除numpy的阵列的一些元素
我想删除从numpy的阵列的一些元素,但正如下面的简化示例代码,如果没有删除最后一个元素,它的工作原理,但它失败如果我们想删除最后一个元素。 下面的代码工作正常:
import numpy as np
values = np.array([0,1,2,3,4,5])
print values
for i in [3,4,1]:
values = np.delete(values,i)
print values
输出是:
[0 1 2 3 4 5]
[0 2 4]
如果只改变4到5,然后它会失败:
import numpy as np
values = np.array([0,1,2,3,4,5])
print values
for i in [3,5,1]:
values = np.delete(values,i)
print values
错误消息:
IndexError: index 5 is out of bounds for axis 0 with size 5
为什么选择th仅当删除最后一个元素时才会发生错误?做这些任务的正确方法是什么?
想要删除索引''[3,4,1]''或值''[3,4,1 ]''?这很令人困惑,因为数组中的值与索引相同 – gsmafra