MATLAB permute命令的操作邏輯

2021-10-01 14:37:37 字數 1220 閱讀 8596

matlab中permute命令可以對高維矩陣的軸進行操作,例如使2*3*4的三維矩陣調整為4*2*3,那麼具體函式內部進行了什麼操作呢?

我們知道matlab裡有兩種座標系,一種是我們熟知的笛卡爾座標系,用命令axis xy實現,以二維圖為例,原點在左下角

還有一種是matlab中矩陣的索引體系,用命令axis ij實現,以二維圖為例,原點在左上角

permute命令就是基於axis ij這種座標軸下進行的操作

下面我們以乙個三維矩陣的例子來說明命令permute的內部操作邏輯

a(:,:,1)=[1 2;3 4];

a(:,:,2)=[5 6;7 8];

a(:,:,3)=[9 10; 11 12];

我們有val(:,:,1) =

1 2

3 4

val(:,:,2) =

5 6

7 8

val(:,:,3) =

9 10

11 12

permute(a,order)操作分為兩種情況

也就是order=[2 3 1]或[3 1 2]

這時候只用找到乙個角度來重新觀察這個矩陣即可

例如下圖中所示

用matlab執行結果進行驗證

d=permute(a,[2 3 1]);

val(:,:,1) =

1 5 9

2 6 10

val(:,:,2) =

3 7 11

4 8 12

例如order = [1 3 2] [2 1 3] [3 2 1]

那麼就是針對這兩個軸的資料進行轉置,如上圖所示

用matlab執行結果進行驗證

b=permute(a,[2 1 3]);

val(:,:,1) =

1 3

2 4

val(:,:,2) =

5 7

6 8

val(:,:,3) =

9 11

10 12

Tcl TK之命令 命令 命令

在tcl中,一切動作都是通過命令實現的,命令通過換行符或分號隔開,對於使用過linux系統的朋友來說非常容易理解。tcl處理一條命令分為兩個步驟 解析和執行。下面將列舉幾個常見的命令 set命令用於建立 讀取和修改變數,此命令需要乙個或者兩個引數。第乙個引數是變數,第二個引數 若給出 是變數的新值。...

source 命令 命令

source 命令 從 c shell 而來 是 bash shell 的內建命令。點命令 就是乙個點符號.從 bourne shell 而來 是 source 的另一名稱。這兩個命令都以乙個指令碼檔名為引數,該指令碼將作為當前 shell 的環境執行,即不會啟動乙個新的子程序。所有在指令碼中設定的...

監控命令命令

第1行結果和uptime一樣 第2行顯示程序狀態統計,zombie 殭屍程序 第3行顯示cpu使用率,us 使用者使用cpu百分比 sy 系統使用cpu百分比 id cpu空閒百分比 第4 5行顯示記憶體 平均使用率和每個cpu使用率 小技巧 按z加顏色,按x高亮排序列,按 進行排序列左右切換 安裝...