Diagonal matrix from multiple columns of an array

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?

 Réponse acceptée

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by