您好,登錄后才能下訂單哦!
小編給大家分享一下Python中numpy怎樣切片,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
簡介
X[n0,n1]是通過 numpy 庫引用二維數組或矩陣中的某一段數據集的一種寫法。
類似的,X[n0,n1,n2]表示取三維數組,取N維數組則有N個參數,N-1個逗號分隔。
以二維數組為例:
import numpy as np
X = np.array([[0,1,2,3],[10,11,12,13],[20,21,22,23],[30,31,32,33]])
X 是一個二維數組,維度分別為 0 ,1;為了方便理解多維,采取數中括號的方式 ‘[’ 確定維數,例如:從左往右,第 0 層 [] 表示第 0 維;第 1 層 [] 表示第 1 維;…以此類推。
取元素 X[n0,n1]
這是最基本的情況,表示取 第0維 的第 n0 個元素,繼續取 第1維 的第 n1個元素。如 X[2,2] 表示第0維第2個元素[20,21,22,23],然后取其第1維的第2個元素即 22;
切片 X[s0:e0,s1:e1]
這是最通用的切片操作,表示取 第0維 的第 s0 到 e0 個元素,繼續取 第1維 的第 s1 到 e1 個元素(左閉右開)。如 X[1:3,1:3] 表示第0維第(1:3)個元素[[10,11,12,13],[20,21,22,23]],然后取其第1維的第(1:3)個元素即 [[11,12],[21,22]];
切片特殊情況 X[:e0,s1:]
特殊情況,即左邊從0開始可以省略X[:e0,s1:e1],右邊到結尾可以省略X[s0:,s1:e1],取某一維全部元素X[:,s1:e1],事實上和Python 的 序列切片規則是一樣的。
常見的 X[:,0] 則表示 第0維取全部,第1維取0號元素;
示例代碼
import numpy as np X = np.array([[0,1,2,3],[10,11,12,13],[20,21,22,23],[30,31,32,33]]) # X 是一個二維數組,維度為 0 ,1 # 第 0 層 [] 表示第 0 維;第 1 層 [] 表示第 1 維; # X[n0,n1] 表示第 0 維 取第n0 個元素 ,第 1 維取第 n1 個元素 print(X[1,0]) # X[1:3,1:3] 表示第 0 維 取 (1:3)元素 ,第 1 維取第(1:3) 個元素 print(X[1:3,1:3]) # X[:n0,:n1] 表示第 0 維 取 第0 到 第n0 個元素 ,第 1 維取 第0 到 第n1 個元素 print(X[:2,:2]) # X[:,:n1] 表示第 0 維 取 全部元素 ,第 1 維取 第0 到第n1 個元素 print(X[:,:2]) # X[:,0]) 表示第 0 維 取全部 元素 ,第 1 維取第 0 個元素 print(X[:,0])
輸出結果
10 [[11 12] [21 22]] [[ 0 1] [10 11]] [[ 0 1] [10 11] [20 21] [30 31]] [ 0 10 20 30]
看完了這篇文章,相信你對Python中numpy怎樣切片有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。