簡體   English   中英

MATLAB交換兩個不同矩陣的列

[英]MATLAB swap columns of two different matrices

我使用matlab並且遇到了一些困難。 我試圖將一個矩陣(A)的列與另一個矩陣(B)的列交換。 例如:

A =

 4     6     5  
 7     8     4     
 6     5     9    
 1     0     0     
 0     1     0     
 0     0     1     

B =

 1     0     0     0     0     0
 0     1     0     0     0     0
 0     0     1     0     0     0
 0     0     0    -1     0     0
 0     0     0     0    -1     0
 0     0     0     0     0    -1

有沒有辦法告訴Matlab切換,例如,A中的第1列和B中的第3列?

tmp = A(:,1);
A(:,1) = B(:,3);
B(:,3) = tmp;

實際上,您可以使用函數DEAL在一行中執行此列交換,而無需使用虛擬變量:

[A(:,1),B(:,3)] = deal(B(:,3),A(:,1));

采用

A(:,1) = B(:,3);

或者實際交換它們,您可以使用:

dummy = A(:,1);
A(:,1) = B(:,3);
B(:,3) = dummy;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM