How to insert a smaller diagonal into a Matrix?

I'm struggling to generate a matrix M=[0 0 1 0 0; 0 0 0 1 0; 0 0 0 0 1; 0 0 0 0 0; 0 0 0 0 0], quickly without entering each entry by hand. I gather there is a quicker way.
I know I can create the 5x5 identity matrix using M=eye(5) but am unsure how to move the diagonal of 1s across 2. Any help would be appreciated

 Akzeptierte Antwort

Geoff Hayes
Geoff Hayes am 29 Mär. 2018
Monkeyman - try using diag as
D = diag([1 1 1],2)

1 Kommentar

Monkeyman
Monkeyman am 29 Mär. 2018
I knew it was so simple, I just couldn't think of it, many thanks

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Gefragt:

am 29 Mär. 2018

Kommentiert:

am 29 Mär. 2018

Community Treasure Hunt

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

Start Hunting!

Translated by