Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
Python中對(duì)于數(shù)組和列表進(jìn)行切片操作是很頻繁的,當(dāng)然對(duì)于切片的操作可供我們直接使用的函數(shù)也是很遍歷了,我們今天主要簡(jiǎn)單總結(jié)一下常用集中索引化方式,希望對(duì)大家有所幫助吧。
對(duì)于列表的切片比較簡(jiǎn)單,在我之前的博客里面有詳細(xì)的講解,需要的話可以去看看,這里就不再詳細(xì)說(shuō)了,今天主要是講解對(duì)于Python中Array對(duì)象的操作,我們平時(shí)使用比較頻繁的一般也就是三維的矩陣了,再高維度的處理方式是相同的,這里我們只講解三維和二維的使用。
對(duì)于X[:,0];
是取二維數(shù)組中第一維的所有數(shù)據(jù)
對(duì)于X[:,1]
是取二維數(shù)組中第二維的所有數(shù)據(jù)
對(duì)于X[:,m:n]
是取二維數(shù)組中第m維到第n-1維的所有數(shù)據(jù)
對(duì)于X[:,:,0]
是取三維矩陣中第一維的所有數(shù)據(jù)
對(duì)于X[:,:,1]
是取三維矩陣中第二維的所有數(shù)據(jù)
對(duì)于X[:,:,m:n]
是取三維矩陣中第m維到第n-1維的所有數(shù)據(jù)
這樣的講解可能還是有點(diǎn)抽象,下面我們用具體的實(shí)例來(lái)講解,相信會(huì)更加容易理解,具體如下:
#!usr/bin/env python
#encoding:utf-8
from __future__ import division
'''
__Author__:沂水寒城
學(xué)習(xí)Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
'''
import numpy as np
def simple_test():
'''
簡(jiǎn)單的小實(shí)驗(yàn)
'''
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]結(jié)果輸出為:'
print data_list[:,0]
print 'X[:,1]結(jié)果輸出為:'
print data_list[:,1]
print 'X[:,m:n]結(jié)果輸出為:'
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]結(jié)果輸出為:'
print data_list[:,:,0]
print 'X[:,:,1]結(jié)果輸出為:'
print data_list[:,:,1]
print 'X[:,:,m:n]結(jié)果輸出為:'
print data_list[:,:,0:1]
if __name__ == '__main__':
simple_test()
結(jié)果如下:
X[:,0]結(jié)果輸出為:
[1 1 3 4 5 6 6 0 4 2 5 9 3]
X[:,1]結(jié)果輸出為:
[2 2 4 5 6 7 7 4 6 9 8 7 7]
X[:,m:n]結(jié)果輸出為:
[[1]
[1]
[3]
[4]
[5]
[6]
[6]
[0]
[4]
[2]
[5]
[9]
[3]]
X[:,:,0]結(jié)果輸出為:
[[ 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]結(jié)果輸出為:
[[ 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]結(jié)果輸出為:
[[[ 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]
果然還是很方便,做個(gè)記錄,歡迎交流!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python發(fā)送form-data請(qǐng)求及拼接form-data內(nèi)容的方法
這篇文章主要介紹了Python發(fā)送form-data請(qǐng)求及拼接form-data內(nèi)容的方法,文中采用的是requests的方式發(fā)送multipart/form-data請(qǐng)求,需要的朋友可以參考下2016-03-03
對(duì)python特殊函數(shù) __call__()的使用詳解
今天小編就為大家分享一篇對(duì)python特殊函數(shù) __call__()的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07
Python?shapefile轉(zhuǎn)GeoJson的2種方式實(shí)例
geojson是地圖可視化系統(tǒng)中最常用的地理數(shù)據(jù)格式,幾乎所有主流地圖可視化庫(kù)或框架都支持geojson數(shù)據(jù)的加載,下面這篇文章主要給大家介紹了關(guān)于Python?shapefile轉(zhuǎn)GeoJson的2種方式的相關(guān)資料,需要的朋友可以參考下2023-03-03
將字典轉(zhuǎn)換為DataFrame并進(jìn)行頻次統(tǒng)計(jì)的方法
下面小編就為大家分享一篇將字典轉(zhuǎn)換為DataFrame并進(jìn)行頻次統(tǒng)計(jì)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
Python實(shí)現(xiàn)畫(huà)箱線圖展示數(shù)據(jù)分布情況
這篇文章主要介紹了Python實(shí)現(xiàn)畫(huà)箱線圖展示數(shù)據(jù)分布情況,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
Python OpenCV實(shí)現(xiàn)識(shí)別信用卡號(hào)教程詳解
本文將介紹如何通過(guò) OpenCV 和 Python 使用模板匹配來(lái)執(zhí)行光學(xué)字符識(shí)別 (OCR),再應(yīng)用我們的模板匹配 OCR 方法來(lái)識(shí)別信用卡類型以及 16 位信用卡數(shù)字。代碼具有一定價(jià)值,感興趣的童鞋可以了解一下2021-11-11
探索Python定時(shí)任務(wù)實(shí)現(xiàn)高效時(shí)間管理
這篇文章主要為大家介紹了探索Python定時(shí)任務(wù)高效實(shí)現(xiàn)高效時(shí)間管理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01

