中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Python中對numpy數組進行轉置與軸變換

發布時間:2021-03-01 15:55:17 來源:億速云 閱讀:674 作者:戴恩恩 欄目:開發技術

本文章向大家介紹如何在Python中對numpy數組進行轉置與軸變換,主要包括如何在Python中對numpy數組進行轉置與軸變換的使用實例、應用技巧、基本知識點總結和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下。

python是什么意思

Python是一種跨平臺的、具有解釋性、編譯性、互動性和面向對象的腳本語言,其最初的設計是用于編寫自動化腳本,隨著版本的不斷更新和新功能的添加,常用于用于開發獨立的項目和大型項目。

矩陣的轉置

>>> import numpy as np
>>> arr=np.arange(15).reshape((3,5))
>>> arr
array([[ 0, 1, 2, 3, 4],
    [ 5, 6, 7, 8, 9],
    [10, 11, 12, 13, 14]])
>>> arr.T
array([[ 0, 5, 10],
    [ 1, 6, 11],
    [ 2, 7, 12],
    [ 3, 8, 13],
    [ 4, 9, 14]])

矩陣的內積

>>> import numpy as np
>>> arr=np.arange(15).reshape((3,5))
>>> arr
array([[ 0, 1, 2, 3, 4],
    [ 5, 6, 7, 8, 9],
    [10, 11, 12, 13, 14]])
>>> arr.T
array([[ 0, 5, 10],
    [ 1, 6, 11],
    [ 2, 7, 12],
    [ 3, 8, 13],
    [ 4, 9, 14]])
>>> np.dot(arr.T,arr)
array([[125, 140, 155, 170, 185],
    [140, 158, 176, 194, 212],
    [155, 176, 197, 218, 239],
    [170, 194, 218, 242, 266],
    [185, 212, 239, 266, 293]])

軸變換

二維軸變換

如何在Python中對numpy數組進行轉置與軸變換

1.兩軸交換

>>> import numpy as np
>>> arr=np.arange(15).reshape((3,5))
>>> arr
array([[ 0, 1, 2, 3, 4],
    [ 5, 6, 7, 8, 9],
    [10, 11, 12, 13, 14]])
>>> arr.transpose(1,0)#1軸和0軸進行交換
array([[ 0, 5, 10],
    [ 1, 6, 11],
    [ 2, 7, 12],
    [ 3, 8, 13],
    [ 4, 9, 14]])

三維軸變換

>>> arr = np.arange(16).reshape((2, 2, 4))
>>> arr
array([[[ 0, 1, 2, 3],
    [ 4, 5, 6, 7]],

    [[ 8, 9, 10, 11],
    [12, 13, 14, 15]]])
>>> arr.transpose((1,0,2))
array([[[ 0, 1, 2, 3],
    [ 8, 9, 10, 11]],

    [[ 4, 5, 6, 7],
    [12, 13, 14, 15]]])

1.這種變化有點麻煩,不好理解。但是如果簡單化就好了,加入用P(x,y,z)來表示矩陣中的每一個點,那么在numpy中,這個x,y,z就分別對應0,1,2

2.舉個例子比如原來數組中0這個元素,它原來的坐標是(0,0,0),那么transpose(1,0,2)對于這個點來說就是把x,y坐標互換,而z坐標不變,則其在新的矩陣中坐標依舊是(0,0,0)不變

3.舉個另外點的例子比如4這個點,其坐標是(0,1,1),那么它的x和y坐標交換之后是(1,0,1),所以它在新的矩陣中位置是(1,0,1)

4.事實上transpose函數正是對原來矩陣中每個點做這個變換,最后得到新的矩陣

兩軸交換

交換1軸和2軸

>>> arr
array([[[ 0, 1, 2, 3],
    [ 4, 5, 6, 7]],

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

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

    [[ 8, 9, 10, 11],
    [12, 13, 14, 15]]])

到此這篇關于如何在Python中對numpy數組進行轉置與軸變換的文章就介紹到這了,更多相關的內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

仲巴县| 镇巴县| 大同市| 炎陵县| 三明市| 大洼县| 汽车| 靖安县| 依兰县| 东乡族自治县| 定西市| 安义县| 玉林市| 中卫市| 阳城县| 云霄县| 英德市| 商南县| 云龙县| 博乐市| 宜兰市| 台北县| 鹿泉市| 灵武市| 六枝特区| 德阳市| 古丈县| 获嘉县| 溧阳市| 甘孜| 南宁市| 海林市| 彝良县| 江西省| 临夏市| 平度市| 西盟| 天门市| 乌鲁木齐县| 雅安市| 康平县|