Extracting the sub-matrix

조회 수: 74(최근 30일)
cikalekli
cikalekli 2021년 10월 27일
편집: cikalekli 2021년 10월 28일
Hello, while I'm practising on Matlab about extracting matrix and here there was a thing which I stucked while doing it. (Plus, I also added my code which I have tried to solve but it was not right way to solve it.)
First I've let A = [1 2 3; 4 5 6; 7 8 9] be a matrix of the size 3-by-3. After that I wanted to extract that sub-matrix such as B = [2 3; 5 6] of the size 2-by-2 or something else.
Finally I just wanted to create the following matrix by typing two commands like that:
E =
0 0 0 0 0
0 0 0 0 0
0 0 1 2 3
0 0 4 5 6
0 0 7 8 9
However I could not really understand to pull of this B = [2 3; 5 6] sub matrix from the A matrix to find out matrix E.
I just want to understand its logic please.
Sincerely...

채택된 답변

David Hill
David Hill 2021년 10월 27일
A = [1 2 3; 4 5 6; 7 8 9];
B=A(1:2,2:3);
E=blkdiag(zeros(2),A);
  댓글 수: 1
cikalekli
cikalekli 2021년 10월 28일
I'm really, really grateful for that. Now I will understand better by giving different values myself with this code structure. Thank you again, I wish you a wondrous day.

댓글을 달려면 로그인하십시오.

추가 답변(1개)

James Tursa
James Tursa 2021년 10월 27일
편집: James Tursa 2021년 10월 27일
You might benefit from going through the onramp tutorials found here:
Sub-matrices use colon indexing. E.g.,
M(3:5,7:9) is the sub-matrix of M in rows 3 thru 5 and columns 7 thru 9.
This syntax can be used for extracting as well as assigning. E.g.,
M = whatever; % some arbitrary matrix
N = M(3:5,7:9); % extract a sub-matrix of M and store it in a variable called N
M(2:4,5:8) = whatever; % assign something to a sub-matrix of M
Also see the following:
  댓글 수: 1
cikalekli
cikalekli 2021년 10월 28일
Ah really thank you for the example and also the site links. As you describe, I will now try to read these links you gave and try to understand them better. Seriously thank you so much for your support.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by