(轉)Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
阿新 • • 發佈:2018-12-11
Python中對於陣列和列表進行切片操作是很頻繁的,當然對於切片的操作可供我們直接使用的函式也是很遍歷了,我們今天主要簡單總結一下常用集中索引化方式,希望對大家有所幫助吧。
對於列表的切片比較簡單,在我之前的部落格裡面有詳細的講解,需要的話可以去看看,這裡就不再詳細說了,今天主要是講解對於Python中Array物件的操作,我們平時使用比較頻繁的一般也就是三維的矩陣了,再高維度的處理方式是相同的,這裡我們只講解三維和二維的使用。
- 對於二維陣列:
對於X[:,0]; 是取二維陣列中第一維的所有資料
對於X[:,1] 是取二維陣列中第二維的所有資料
對於X[:,m:n] 是取二維陣列中第m維到第n-1維的所有資料
- 對於三維陣列:
對於X[:,:,0] 是取三維矩陣中第一維的所有資料
對於X[:,:,1] 是取三維矩陣中第二維的所有資料
對於X[:,:,m:n] 是取三維矩陣中第m維到第n-1維的所有資料
這樣的講解可能還是有點抽象,下面我們用具體的例項來講解,相信會更加容易理解,具體如下:
#!usr/bin/env python #encoding:utf-8 from __future__ import division ''' __Author__:沂水寒城 學習Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n] ''' import numpy as np def simple_test(): ''' 簡單的小實驗 ''' data_list=[[1,2,3],[1,2,1],[3,4,5],[4,5,6],[5,6,7],[6,7,8],[6,7,9],[0,4,7],[4,6,0],[2,9,1],[5,8,7],[9,7,8],[3,7,9]] # data_list.toarray() data_list=np.array(data_list) print 'X[:,0]結果輸出為:' print data_list[:,0] print 'X[:,1]結果輸出為:' print data_list[:,1] print 'X[:,m:n]結果輸出為:' print data_list[:,0:1] data_list=[[[1,2],[1,0],[3,4],[7,9],[4,0]],[[1,4],[1,5],[3,6],[8,9],[5,0]],[[8,2],[1,8],[3,5],[7,3],[4,6]], [[1,1],[1,2],[3,5],[7,6],[7,8]],[[9,2],[1,3],[3,5],[7,67],[4,4]],[[8,2],[1,9],[3,43],[7,3],[43,0]], [[1,22],[1,2],[3,42],[7,29],[4,20]],[[1,5],[1,20],[3,24],[17,9],[4,10]],[[11,2],[1,110],[3,14],[7,4],[4,2]]] data_list=np.array(data_list) print 'X[:,:,0]結果輸出為:' print data_list[:,:,0] print 'X[:,:,1]結果輸出為:' print data_list[:,:,1] print 'X[:,:,m:n]結果輸出為:' print data_list[:,:,0:1] if __name__ == '__main__': simple_test()
結果如下:
X[:,0]結果輸出為: [1 1 3 4 5 6 6 0 4 2 5 9 3] X[:,1]結果輸出為: [2 2 4 5 6 7 7 4 6 9 8 7 7] X[:,m:n]結果輸出為: [[1] [1] [3] [4] [5] [6] [6] [0] [4] [2] [5] [9] [3]] X[:,:,0]結果輸出為: [[ 1 1 3 7 4] [ 1 1 3 8 5] [ 8 1 3 7 4] [ 1 1 3 7 7] [ 9 1 3 7 4] [ 8 1 3 7 43] [ 1 1 3 7 4] [ 1 1 3 17 4] [11 1 3 7 4]] X[:,:,1]結果輸出為: [[ 2 0 4 9 0] [ 4 5 6 9 0] [ 2 8 5 3 6] [ 1 2 5 6 8] [ 2 3 5 67 4] [ 2 9 43 3 0] [ 22 2 42 29 20] [ 5 20 24 9 10] [ 2 110 14 4 2]] X[:,:,m:n]結果輸出為: [[[ 1] [ 1] [ 3] [ 7] [ 4]] [[ 1] [ 1] [ 3] [ 8] [ 5]] [[ 8] [ 1] [ 3] [ 7] [ 4]] [[ 1] [ 1] [ 3] [ 7] [ 7]] [[ 9] [ 1] [ 3] [ 7] [ 4]] [[ 8] [ 1] [ 3] [ 7] [43]] [[ 1] [ 1] [ 3] [ 7] [ 4]] [[ 1] [ 1] [ 3] [17] [ 4]] [[11] [ 1] [ 3] [ 7] [ 4]]] [Finished in 0.6s]