【发布时间】:2019-06-02 07:08:11
【问题描述】:
我对 numpy 的索引有点困惑。假设以下示例:
>>> import numpy as np
>>> x = np.arange(10)
>>> x.shape = (2,5)
>>> x
array([[0, 1, 2, 3, 4],
[5, 6, 7, 8, 9]])
>>> x[0:-1]
array([[0, 1, 2, 3, 4]])
>>> x[1:-1]
array([], shape=(0, 5), dtype=int64)
>>> x[1:]
array([[5, 6, 7, 8, 9]])
我感到困惑的是,我可以使用x[0:-1] 将第一行作为二维数组。但就索引而言,-1 实际上意味着什么?我原以为,调用x[1:-1] 会给我第二行,但如果返回一个空数组,并得到我想要的,我需要使用 x[1:]?
我有点困惑。 感谢您的帮助
【问题讨论】:
-
[1:-1]:从第二个(项目/行)到最后一个(=第二个)项目/行:这将导致一个空数组。 -
首先尝试使用包含两个元素的简单 Python 列表:
x = [1, 2],然后以相同的方式对其进行索引:看看你得到了什么。在你的情况下,数字1和2被长度为 5 的数组替换。
标签: python python-3.x numpy scipy numpy-ndarray