据我所知,indexing, slicing and iterating scipy 教程中没有涉及到它,所以让我在这里问一下:

说我有

x = np.array([[1,2],[3,4],[5,6],[7,8],[9,0]])
x: array([[1, 2],
          [3, 4],
          [5, 6],
          [7, 8],
          [9, 0]])

如何切片数组以获取第一行和最后一行:
y: array([[1, 2],
          [3, 4],
          [7, 8],
          [9, 0]])

最佳答案

我不知道是否有一种巧妙的方法来做到这一点。当然,您可以明确列出索引:

>>> x[[0,1,-2,-1]]
array([[1, 2],
       [3, 4],
       [7, 8],
       [9, 0]])

或者使用 r_ 来帮助,如果我们想从头部或尾部获得更多行,这可能会更方便:
>>> x[np.r_[0:2, -2:0]]
array([[1, 2],
       [3, 4],
       [7, 8],
       [9, 0]])

关于python - 如何切片一个 numpy 数组以获取第一行和最后两行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22799477/

10-16 22:21