python中reshape函數(shù)用法示例詳解
python中reshape函數(shù)用法詳解
reshape函數(shù)
reshape函數(shù)是Numpy庫(kù)中的一個(gè)函數(shù),可以用于改變一個(gè)數(shù)組的形狀,例如將一個(gè)二維數(shù)組轉(zhuǎn)換成一個(gè)三維數(shù)組。
import numpy as np # 創(chuàng)建一個(gè)二維數(shù)組,形狀為(4, 6) a = np.array([[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12], [13, 14, 15, 16, 17, 18], [19, 20, 21, 22, 23, 24]]) # 將二維數(shù)組a轉(zhuǎn)換成一個(gè)三維數(shù)組,形狀為(2, 3, 4) b = np.reshape(a, (2, 3, 4)) print(a.shape) # 輸出(4, 6) print(b.shape) # 輸出(2, 3, 4) print(b)
程序運(yùn)行結(jié)果:
下面是reshape函數(shù)的具體實(shí)現(xiàn)細(xì)節(jié):
numpy.reshape(array, newshape, order='C')
- 其中,array表示要改變形狀的數(shù)組,newshape表示新的形狀,order表示元素在新數(shù)組中的存儲(chǔ)順序(可選,默認(rèn)為’C’,即按行存儲(chǔ))。
- 當(dāng)newshape中的元素之積與原數(shù)組中的元素之積不相等時(shí),會(huì)拋出ValueError異常(這當(dāng)然不行了,空著的或者多出來(lái)的沒(méi)辦法處理);當(dāng)newshape中的元素之積與原數(shù)組中的元素之積相等時(shí),reshape函數(shù)將按照order參數(shù)指定的順序?qū)⒃瓟?shù)組中的元素重新排列,生成一個(gè)新的數(shù)組。(拿上面代碼中的例子來(lái)說(shuō)就是4X6=2X3X4)
該函數(shù)具體實(shí)現(xiàn)如下:
- 首先,根據(jù)newshape中的元素構(gòu)建一個(gè)新的空數(shù)組,用于存儲(chǔ)重排后的元素。
- 然后,按照order參數(shù)指定的順序,將原數(shù)組中的元素逐個(gè)復(fù)制到新數(shù)組中。常用的存儲(chǔ)順序有’C’(按行存儲(chǔ))和’F’(按列存儲(chǔ))兩種。
- 最后,返回新數(shù)組。
reshape函數(shù)可以用于改變多維數(shù)組的形狀,例如將一個(gè)二維數(shù)組轉(zhuǎn)換成一個(gè)三維數(shù)組,或?qū)⒁粋€(gè)三維數(shù)組轉(zhuǎn)換成一個(gè)二維數(shù)組。但需要注意的是,reshape函數(shù)不會(huì)改變數(shù)組中的元素?cái)?shù)量和數(shù)據(jù)類(lèi)型,只會(huì)改變數(shù)組的形狀??傊瑀eshape函數(shù)是一個(gè)非常實(shí)用的函數(shù),可以用于將一個(gè)數(shù)組轉(zhuǎn)換成任意形狀的數(shù)組。在使用reshape函數(shù)時(shí),需要注意保證newshape中的元素之積與原數(shù)組中的元素之積相等,以確保重排后的數(shù)組不會(huì)丟失元素。
到此這篇關(guān)于python中reshape函數(shù)用法詳解的文章就介紹到這了,更多相關(guān)python reshape函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 對(duì)python 矩陣轉(zhuǎn)置transpose的實(shí)例講解
- 在python2.7中用numpy.reshape 對(duì)圖像進(jìn)行切割的方法
- python實(shí)現(xiàn)將一維列表轉(zhuǎn)換為多維列表(numpy+reshape)
- Python reshape的用法及多個(gè)二維數(shù)組合并為三維數(shù)組的實(shí)例
- Python?numpy.transpose使用詳解
- python transpose()處理高維度數(shù)組的軸變換的實(shí)現(xiàn)
- python?reshape和transpose的區(qū)別小結(jié)
相關(guān)文章
用python刪除java文件頭上版權(quán)信息的方法
在使用他人代碼時(shí),為不保留文件頭部版權(quán)信息,需要一個(gè)個(gè)刪掉,下面是用python刪除java文件頭上的版權(quán)信息的方法2014-07-07如何利用Python獲取文本中的電話號(hào)碼實(shí)例代碼
Python的文本處理是經(jīng)常碰到的一個(gè)問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于如何利用Python獲取文本中的電話號(hào)碼的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09Django {{ MEDIA_URL }}無(wú)法顯示圖片的解決方式
這篇文章主要介紹了Django {{ MEDIA_URL }}無(wú)法顯示圖片的解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04python圖形開(kāi)發(fā)GUI庫(kù)wxpython使用方法詳解
這篇文章主要介紹了python GUI庫(kù)wxpython使用方法詳解,需要的朋友可以參考下2020-02-02Python使用tkinter庫(kù)實(shí)現(xiàn)文本顯示用戶輸入功能示例
這篇文章主要介紹了Python使用tkinter庫(kù)實(shí)現(xiàn)文本顯示用戶輸入功能,結(jié)合實(shí)例形式分析了tkinter庫(kù)獲取用戶輸入及控件顯示相關(guān)操作技巧,需要的朋友可以參考下2018-05-05Python腳本實(shí)現(xiàn)調(diào)用手機(jī)攝像頭
這篇文章主要為大家詳細(xì)介紹了Python如何通過(guò),腳本實(shí)現(xiàn)調(diào)用手機(jī)攝像頭,這樣就能隨時(shí)隨地用電腦偷偷看看男朋友都在干啥了,感興趣的小伙伴可以了解下2025-03-03Python OpenCV讀取png圖像轉(zhuǎn)成jpg圖像存儲(chǔ)的方法
今天小編就為大家分享一篇Python OpenCV讀取png圖像轉(zhuǎn)成jpg圖像存儲(chǔ)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10初探利用Python進(jìn)行圖文識(shí)別(OCR)
這篇文章主要介紹了初探利用Python進(jìn)行圖文識(shí)別(OCR),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-02-02