Filter löschen
Filter löschen

Creating a diagonal matrix

3 Ansichten (letzte 30 Tage)
Gratitude Kim
Gratitude Kim am 1 Aug. 2017
Beantwortet: Andrei Bobrov am 5 Aug. 2017
Hi, I have written such codes.
Col=4;
Row=3
A1=zeros(Row,Col);
n = size(A1,1);
A1([1:n+1:end,n+1:n+1:end]) = 1
Output:
A1 =
1 1 0 0
0 1 1 0
0 0 1 1
I obtained output A1. Appreciate if you are able to help me to modify the code so it can become [1 1 1 0; 0 1 1 1]. Appreciate your kind assistance.
  1 Kommentar
Guillaume
Guillaume am 1 Aug. 2017
It's unclear what you're asking. Wouldn't
A1 = [1 1 1 0; 0 1 1 1]
answer your question?
Note that your code makes a 3x4 matrix whereas you're now asking for a 2x4 matrix.

Melden Sie sich an, um zu kommentieren.

Antworten (2)

KSSV
KSSV am 1 Aug. 2017
A1(3:end,:) = []

Andrei Bobrov
Andrei Bobrov am 5 Aug. 2017
t = true(2,4);
out = tril(t,2) & triu(t);

Kategorien

Mehr zu Operating on Diagonal Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by