假设我们有以下数组:
import numpy as np
a = np.arange(1, 10)
a = a.reshape(len(a), 1)
array([[1],
[2],
[3],
[4],
[5],
[6],
[7],
[8],
[9]])
现在,我想访问从索引4到结尾的元素:
a[3:-1]
array([[4],
[5],
[6],
[7],
[8]])
当我这样做时,结果向量缺少最后一个元素,现在有五个元素而不是六个,为什么会发生,我怎样才能获得最后一个元素而不附加它?
预期产出:
array([[4],
[5],
[6],
[7],
[8],
[9]])
提前致谢
答案 0 :(得分:30)
[:-1]
删除最后一个元素。而不是
a[3:-1]
写
a[3:]
您可以在此处阅读Python切片表示法:Explain Python's slice notation
NumPy切片是其中的一个扩展。 NumPy教程有一些内容:Indexing, Slicing and Iterating。