久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Python numpy.transpose 詳解

 bitzhang 2020-06-18

前言

看Python代碼時,碰見 numpy.transpose 用于高維數(shù)組時挺讓人費解,,通過一番畫圖分析和代碼驗證,,發(fā)現(xiàn) transpose 用法還是很簡單的。

正文

Numpy 文檔 numpy.transpose 中做了些解釋,,transpose 作用是改變序列,,下面是一些文檔Examples:


代碼1:

x = np.arange(4).reshape((2,2))

輸出1:

#x 為:
array([[0, 1],
       [2, 3]])

代碼2:

import numpy as np
x.transpose()

輸出2:

array([[0, 2],
       [1, 3]])

對于二維 ndarray,transpose在不指定參數(shù)是默認是矩陣轉(zhuǎn)置,。如果指定參數(shù),,有如下相應(yīng)結(jié)果:
代碼3:

x.transpose((0,1))

輸出3:

# x 沒有變化
array([[0, 1],
       [2, 3]])

代碼4:

x.transpose((1,0))

輸出4:

# x 轉(zhuǎn)置了
array([[0, 2],
       [1, 3]])

這個很好理解:
對于x,,因為:

代碼5:

x[0][0] == 0
x[0][1] == 1
x[1][0] == 2
x[1][1] == 3

我們不妨設(shè)第一個方括號“[]”為 0軸 ,第二個方括號為 1軸 ,,則x可在 0-1坐標系 下表示如下:
這里寫圖片描述

代碼6:

因為 x.transpose((0,1)) 表示按照原坐標軸改變序列,,也就是保持不變
而 x.transpose((1,0)) 表示交換 ‘0軸’ 和 ‘1軸’,所以就得到如下圖所示結(jié)果:

這里寫圖片描述

注意,,任何時候你都要保持清醒,,告訴自己第一個方括號“[]”為 0軸 ,第二個方括號為 1軸
此時,,transpose轉(zhuǎn)換關(guān)系就清晰了,。


我們來看一個三維的:
代碼7:

import numpy as np

# A是array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15])
A = np.arange(16)

# 將A變換為三維矩陣
A = A.reshape(2,2,4)
print(A)

輸出7:

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

我們對上述的A表示成如下三維坐標的形式:

在這里插入圖片描述

所以對于如下的變換都很好理解啦:
代碼8:

A.transpose((0,1,2))  #保持A不變
A.transpose((1,0,2))  #將 0軸 和 1軸 交換

0軸 1軸 交換:

在這里插入圖片描述
此時,輸出

代碼9:

A.transpose((1,0,2)) [0][1][2]	#根據(jù)上圖這個結(jié)果應(yīng)該是10

后面不同的參數(shù)以此類推,。

完,。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多