Extracting the sub-matrix
430 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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...
0 commentaires
Réponse acceptée
David Hill
le 27 Oct 2021
A = [1 2 3; 4 5 6; 7 8 9];
B=A(1:2,2:3);
E=blkdiag(zeros(2),A);
1 commentaire
Plus de réponses (1)
James Tursa
le 27 Oct 2021
Modifié(e) : James Tursa
le 27 Oct 2021
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:
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!