日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python三维数组切片_【NumPy学习指南】day4 多维数组的切片和索引

發布時間:2025/3/15 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python三维数组切片_【NumPy学习指南】day4 多维数组的切片和索引 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ndarray支持在多維數組上的切片操作。為了方便起見,我們可以用一個省略號(...)來

表示遍歷剩下的維度。

(1)舉例來說,我們先用arange函數創建一個數組并改變其維度,使之變成一個三維數組:>>>b=np.arange(24).reshape(2,3,4)

>>> b.shape

(2L, 3L, 4L)

>>> b

array([[[ 0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]],

[[12, 13, 14, 15],

[16, 17, 18, 19],

[20, 21, 22, 23]]])

多維數組b中有0~23的整數,共24個元素,是一個2×3×4的三維數組。我們可以形象地把它看做一個兩層樓建筑,每層樓有12個房間,并排列成3行4列。或者,我們也可以將其看成是電子表格中工作表(sheet)、行和列的關系。你可能已經猜到,reshape函數的作用是改變數組的“形狀”,也就是改變數組的維度,其參數為一個正整數元組,分別指定數組在每個維度上的大小。如果指定的維度和數組的元素數目不相吻合,函數將拋出異常。

(2)我們可以用三維坐標來選定任意一個房間,即樓層、行號和列號。例如,選定第1層樓、第1行、第1列的房間(也可以說是第0層樓、第0行、第0列,這只是習慣問題),可以這樣表示:>>>b[0,0,0]

0

(3)如果我們不關心樓層,也就是說要選取所有樓層的第1行、第1列的房間,那么可以將第1個下標用英文標點的冒號:來代替:>>>b[:,0,0]

array([0, 12])

>>>b[0]

array([[0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]])

我們還可以這樣寫,選取第1層樓的所有房間:>>>b[0,:,:]

array([[0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]])

多個冒號可以用一個省略號(...)來代替,因此上面的代碼等價于:>>>b[0,...]array([[0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]])

進而可以選取第1層樓、第2排的所有房間:>>>b[0,1]

array([4,5, 6, 7])

(4) 再進一步,我們可以在上面的數組切片中間隔地選定元素:>>>b[0,1,::2]

array([4,6])

(5) 如果要選取所有樓層的位于第2列的房間,即不指定樓層和行號,用如下代碼即可:>>>b[...,1]

array([[1, 5, 9],

[13, 17, 21]])

類似地,我們可以選取所有位于第2行的房間,而不指定樓層和列號:>>>b[:,1]

array([[4, 5, 6, 7],

[16, 17, 18, 19]])

如果要選取第1層樓的所有位于第2列的房間,在對應的兩個維度上指定即可:>>>b[0,:,1]

array([1,5, 9])

(6)如果要選取第1層樓的最后一列的所有房間,使用如下代碼:>>>b[0,:,-1]

array([3, 7, 11])

如果要反向選取第1層樓的最后一列的所有房間,使用如下代碼:>>>b[0,::-1,-1]

array([11, 7, 3])

在該數組切片中間隔地選定元素:>>>b[0,::2,-1]

array([3, 11])

如果在多維數組中執行翻轉一維數組的命令,將在最前面的維度上翻轉元素的順序,在我們

的例子中將把第1層樓和第2層樓的房間交換:>>>b[::-1]

array([[[12,13, 14, 15],

[16, 17, 18, 19],

[20, 21, 22, 23]],

[[ 0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]]])

剛才做了些什么

我們用各種方法對一個NumPy多維數組進行了切片操作。

總結

以上是生活随笔為你收集整理的python三维数组切片_【NumPy学习指南】day4 多维数组的切片和索引的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。