欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

對python 矩陣轉(zhuǎn)置transpose的實例講解

 更新時間:2018年04月17日 15:42:01   投稿:jingxian  
下面小編就為大家分享一篇對python 矩陣轉(zhuǎn)置transpose的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在讀圖片時,會用到這么的一段代碼:

image_vector_len = np.prod(image_size)#總元素大小,3*55*47
img = Image.open(path)
    arr_img = np.asarray(img, dtype='float64')
    arr_img = arr_img.transpose(2,0,1).reshape((image_vector_len, ))# 47行,55列,每個點有3個元素rgb。再把這些元素一字排開

transpose是什么意識呢? 看如下例子:

arr1 = array([[[ 0, 1, 2, 3],
    [ 4, 5, 6, 7]],
    [[ 8, 9, 10, 11],
    [12, 13, 14, 15]]])

這是原來的矩陣。如果對其進(jìn)行轉(zhuǎn)置,執(zhí)行arr2 = arr1.transpose((1,0,2))

得到:

array([[[ 0, 1, 2, 3],
    [ 8, 9, 10, 11]],
    [[ 4, 5, 6, 7],
    [12, 13, 14, 15]]])

過程是怎樣的?

arr1.shape 應(yīng)該是(2, 2, 4) 意為 2維,2*4矩陣

arr1.transpose(*args) 里面的參數(shù),可以這么理解,他是調(diào)換arr1.shape的順序,咱來給arr1.shape標(biāo)一下角標(biāo)哈,(2[0], 2[1], 4[2]) [ ] 里是shape的索引,對吧,

transpose((1, 0, 2)) 的意思是 按照這個順序 重新設(shè)置shape 也就是 (2[1], 2[0], 4[2])

雖然看起來 變換前后的shape都是 2,2,4 , 但是問題來了,transpose是轉(zhuǎn)置

shape按照(1,0,2)的順序重新設(shè)置了, array里的所有元素 也要按照這個規(guī)則重新組成新矩陣

比如 8 在arr1中的索引是 (1, 0, 0) 那么按照剛才的變換規(guī)則,就是 (0, 1, 0) 看看跟你結(jié)果arr2的位置一樣了吧,依此類推..

另外一個知識點:

對于一維的shape,轉(zhuǎn)置是不起作用的,舉例:

x=linspace(0,4,5) 
#array([0.,1.,2.,3.,4.])
y=transpose(x)  # 會轉(zhuǎn)置失敗。

如果想正確使用的話:

x.shape=(5,1)
y=transpose(x)  #就可以了

以上這篇對python 矩陣轉(zhuǎn)置transpose的實例講解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python如何將list中的string轉(zhuǎn)換為int

    Python如何將list中的string轉(zhuǎn)換為int

    這篇文章主要介紹了Python如何將list中的string轉(zhuǎn)換為int,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • PyInstaller常用打包命令舉例詳解

    PyInstaller常用打包命令舉例詳解

    使用PyInstaller你可以方便地將Python程序打包成可執(zhí)行文件,讓你的程序更容易分享和分發(fā),這篇文章主要給大家介紹了關(guān)于PyInstaller常用打包命令的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • Python調(diào)用Prometheus監(jiān)控數(shù)據(jù)并計算

    Python調(diào)用Prometheus監(jiān)控數(shù)據(jù)并計算

    Prometheus是一套開源監(jiān)控系統(tǒng)和告警為一體,由go語言(golang)開發(fā),是監(jiān)控+報警+時間序列數(shù)據(jù)庫的組合。本文將介紹Python如何調(diào)用Prometheus實現(xiàn)數(shù)據(jù)的監(jiān)控與計算,需要的可以參考一下
    2021-12-12
  • Python利用matplotlib繪制折線圖的新手教程

    Python利用matplotlib繪制折線圖的新手教程

    這篇文章主要給大家介紹了關(guān)于Python利用matplotlib繪制折線圖的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Python?提速器numba

    Python?提速器numba

    這篇文章主要介紹了Python?提速器numba,相信大部分人都感嘆過python 真的太好用了,但是它真的好慢啊,然而今天我們就來用numba解決Python?慢的這個問題,需要的朋友可以參考一下
    2022-01-01
  • 關(guān)于DataFrame中某列值的替換map(dict)

    關(guān)于DataFrame中某列值的替換map(dict)

    這篇文章主要介紹了關(guān)于DataFrame中某列值的替換map(dict),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • PyCharm vs VSCode,作為python開發(fā)者,你更傾向哪種IDE呢?

    PyCharm vs VSCode,作為python開發(fā)者,你更傾向哪種IDE呢?

    這篇文章主要介紹了PyCharm和vscode作為python ide的優(yōu)劣,幫助你選擇適合自己的ide,感興趣的朋友可以了解下
    2020-08-08
  • python 中if else 語句的作用及示例代碼

    python 中if else 語句的作用及示例代碼

    python中的if-else語句是一個判斷性語句,既然是判斷就要有條件以及滿足條件與不滿足的情況,一下將講解一些if-else語句的知識,需要的朋友參考下吧
    2018-03-03
  • python如何處理衛(wèi)星云圖獲取亮溫值

    python如何處理衛(wèi)星云圖獲取亮溫值

    這篇文章主要介紹了python如何處理衛(wèi)星云圖獲取亮溫值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 詳解Python中各種運(yùn)算符的使用

    詳解Python中各種運(yùn)算符的使用

    在?Python?編程中,運(yùn)算符是用于執(zhí)行各種數(shù)學(xué)和邏輯操作的特殊符號,本文我們就深入探討?Python?中的常見運(yùn)算符,并通過豐富的案例來說明它們的用法和功能吧
    2023-07-07

最新評論