python - 获取从索引到结束的数组元素

标签 python vector numpy indexing

假设我们有以下数组:

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]])

提前致谢

最佳答案

[:-1] 删除最后一个元素。而不是

a[3:-1]

a[3:]

您可以在此处阅读 Python 切片符号:Explain Python's slice notation

NumPy 切片是它的扩展。 NumPy 教程有一些覆盖:Indexing, Slicing and Iterating .

关于python - 获取从索引到结束的数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13732025/

相关文章:

vector - 检查 Vec 是否包含来自另一个 Vec 的所有元素

无法打开引用 vector 文件。它是什么?

python - 循环向量列表以创建每个向量的直方图

Python 使用 tenacity 模块重试

for循环中的Python变量赋值

c++ - 将大整数作为 vector 中的值传递时出现段错误

python - 计算阶跃函数的总和

python - 如何有效地用图像的中值填充 RGB numpy 数组?

python - SQLAlchemy 中使用什么类型来存储字节串?

python - 如何生成 500 个随机订单,其中项目在 python 中按 (1,5) 的顺序均匀分布?