对角线并连接矩阵的每一行

时间:2018-03-13 14:11:00

标签: matlab matrix concatenation

给出一个矩阵:

A = [1 2 3
     4 5 6
     7 8 9]

如何对A的每一行进行对角化并同时连接它们,以便产生以下结果?

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

1 个答案:

答案 0 :(得分:0)

您可能希望使用diag(v)函数,并将其应用于A的每一行。

B = diag(A(1,:))
for i=2:size(A)
    B = [B,diag(A(i,:))]
end