Python中的?Numpy?數(shù)組形狀改變及索引切片
1.改變數(shù)組形狀
數(shù)組的shape
屬性返回一個(gè)元組,包括維度以及每個(gè)軸的元素?cái)?shù)量,Numpy 還提供了一個(gè)reshape()
方法,它可以改變數(shù)組的形狀,返回一個(gè)新的數(shù)組。
例如:
a = np.array([1,2,3,4,5,6,7,8])
轉(zhuǎn)換成二維數(shù)組:
b = a.reshape((2,4))
轉(zhuǎn)換成三維數(shù)組:
c = a.reshape((2,2,2))
但是需要注意的是,修改后的數(shù)組元素個(gè)數(shù)與原數(shù)組元素個(gè)數(shù)必須是一致的,不一致會(huì)報(bào)錯(cuò)。 例如執(zhí)行b = a.reshape((2,5))
代碼會(huì)報(bào)“ValueError: cannot reshape array of size 8 into shape (2,5)”的錯(cuò)誤。
2.索引和切片
在處理數(shù)據(jù)時(shí),不可避免要對(duì)數(shù)據(jù)進(jìn)行索引和切片,選擇數(shù)據(jù)的某幾行、某幾列數(shù)據(jù)等,Numpy 在這方面也非常強(qiáng)大,具體如下:
一維數(shù)組索引和切片一維數(shù)組索引和切片比較簡單,類似于Python的列表,例如:
a = np.array([1,2,3,4,5,6]) # 獲取第4個(gè)元素 a[4] # 獲取前3個(gè)元素 a[:3]
多維數(shù)組索引和切片多維數(shù)組有多個(gè)軸,那么就需要對(duì)每個(gè)軸進(jìn)行索引,此處以二維數(shù)組為例:
a = np.array([[1,2,3],[4,5,6]]) # 獲取某一行數(shù)據(jù)(第二行) a[1] # 獲取第二行第二個(gè)數(shù)據(jù) a[1,1]
如果取第0軸前2個(gè)元素、第1軸前2個(gè)元素,那么切片如下:
a[:2,:2]
布爾索引
Numpy 布爾索引指的是根據(jù)bool類型True和False確定的索引,例如:
a = np.arange(10) b = a<6 b
結(jié)果輸出如下:
array([ True, True, True, True, True, True, False, False, False, False])
通過結(jié)果可以看到,元素值小于6的話,布爾索引值為True,否則為False。 如果想要過濾出來符合條件的結(jié)果,而不是輸出True和False,可以使用a[b]
即a[a<6]
實(shí)現(xiàn)。
到此這篇關(guān)于Python中的 Numpy 數(shù)組形狀改變及索引切片的文章就介紹到這了,更多相關(guān)Python Numpy 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python2利用wxpython生成投影界面工具的圖文詳解
這篇文章主要介紹了python2利用wxpython生成投影界面工具的圖文詳解,本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04Python中使用PyHook監(jiān)聽鼠標(biāo)和鍵盤事件實(shí)例
這篇文章主要介紹了Python中使用PyHook監(jiān)聽鼠標(biāo)和鍵盤事件實(shí)例,這個(gè)庫依賴于另一個(gè)Python庫PyWin32,并且只能運(yùn)行在Windows平臺(tái),需要的朋友可以參考下2014-07-07Pytorch上下采樣函數(shù)之F.interpolate數(shù)組采樣操作詳解
最近用到了上采樣下采樣操作,pytorch中使用interpolate可以很輕松的完成,下面這篇文章主要給大家介紹了關(guān)于Pytorch上下采樣函數(shù)之F.interpolate數(shù)組采樣操作的相關(guān)資料,需要的朋友可以參考下2022-04-04在pandas中遍歷DataFrame行的實(shí)現(xiàn)方法
這篇文章主要介紹了在pandas中遍歷DataFrame行的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10Python實(shí)現(xiàn)爆破ZIP文件(支持純數(shù)字,數(shù)字+字母,密碼本)
這篇文章主要為大家分享了如何利用Python實(shí)現(xiàn)破解zip文件的密碼,能實(shí)現(xiàn)破解純數(shù)字、數(shù)字+字母、密碼本等種類的密碼,需要的可以參考一下2022-03-03