多维数组上的numpy高级索引

时间:2017-02-04 04:07:30

标签: python arrays numpy indexing

Say x是一个包含以下内容的3x3 numpy数组:

import numpy as np
x = np.array([[ 1.,  2.,  3.],
              [ 4.,  5.,  6.],
              [ 7.,  8.,  9.]])

是否有一些索引可以给我以下子阵列:

array([[ 1.,  2.],
       [ 5.,  6.]])

2 个答案:

答案 0 :(得分:4)

您可以将integer array indexing与数组元组一起使用:

>>> rows = np.array([[0, 0],
...                  [1, 1]], dtype=np.intp)
>>> columns = np.array([[0, 1],
...                     [1, 2]], dtype=np.intp)
>>> x[rows, columns]
array([[ 1.,  2.],
       [ 5.,  6.]])

答案 1 :(得分:-3)

你可以使用

x[:2,:2]

解决您的问题