numpy 數組索引數組


在numpy中,數組除了可以被整數索引,還可以被數組索引.

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

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

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的第一維。

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)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM