numpy 數組索引數組

在numpy中,數組除了能夠被整數索引,還能夠被數組索引.數組

a[b]就是已數組b的元素爲索引,讀取數組a的值.spa

當被索引數組a是一維數組,b是一維或則多維數組時,結果維度維度與索引數組b相同。code

a = np.array([7,8,9,10]) b=np.array([[3,1],[1,2]]) print('a:',a) print('b:',b) print('result:',a[b]) print(a[b].shape)
a: [ 7  8  9 10] b: [[3 1] [1 2]] result: [[10  8] [ 8  9]] (2, 2)

當被索引數組a是多維數組,b是一維或則多維數組時,每個惟一的索引數列指向a的第一維。blog

a = np.array([ [0, 0, 0], # 黑色
    [255, 0, 0],  # 紅色
    [0, 255, 0],  # 綠色
    [0, 0, 255],  # 藍色
    [255, 255, 255]  # 白色
]) b= np.array([ [0, 1, 2, 0], [0, 3, 4, 0] ]) print(a.shape) print(b.shape) print('result:',a[b]) print(a[b].shape)
(5, 3) (2, 4) result: [[[ 0 0 0] [255 0 0] [ 0 255 0] [ 0 0 0]] [[ 0 0 0] [ 0 0 255] [255 255 255] [ 0 0 0]]] (2, 4, 3)
相關文章
相關標籤/搜索