Diagonal matrix from multiple columns of an array

3 visualizzazioni (ultimi 30 giorni)
I have the array
M=[a b c;
d e f;
g h i]
and I want to construct an array composed of several diagonal arrays in the form:
N=[0 a d 0 0;
0 0 b e 0;
0 0 0 c f;
g 0 0 0 0;
0 h 0 0 0]
or basically place the individual columns of M into pre-assigned positions (1 2 -3) in N. How can I do this without a loop?

Risposta accettata

Bruno Luong
Bruno Luong il 4 Nov 2018
Take a look at spdiags

Più risposte (0)

Categorie

Scopri di più su Operating on Diagonal Matrices in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by