Creating a submatrix from a matrix
Show older comments
I want a code to create a matrix which consist of rows and columns of another matrix.
i.e. A (4X4) = [ 1 2 3 4; 5 6 7 8; 1 3 5 7; 2 4 6 8; ]
The submatrix B consist of the { 1, 2, 4 }rows of A and the { 2,3 }columns of A:
Β (3Χ2) = [ 2 3; 6 7; 4 6; ]
Any help could be useful.
Thanks in advance!
1 Comment
said mohamed
on 5 May 2021
Using the matrix A = [5 1 11; 7 13 3; 8 5 2], the matrix B is constructed as B = [A A A; A A A; A A A]. Which of the following is the result of the operation K = L * J, made using the submatrices of matrix B, L = B (1: 3,3: 5) and J = B (2: 4,2: 3)?
Accepted Answer
More Answers (1)
VANSHUL CHOUDHARY
on 20 Aug 2021
A = rand(4,3);
% Get those elements of A that are located in rows 3 to 4 and
% column 2 to 3.
sub_matrix = A(3:4,2:3);
4 Comments
Justin Paulan
on 12 Nov 2023
For example if the matrix is 5x5 and i want to creat a submatrix that is 2x4 it easy to just use how you showed. But i have to creat a submatrix that is 2x4 that has the first 2 rows and columns from the same position in the 5x5 but has the last two rows and columns from the middle position of the 5x5... How do i do that? Matix A is the 5x5 and i wanna get to A4 by using your method.

Dyuman Joshi
on 12 Nov 2023
@Justin Paulan, experiment with the methods shown in the Answers in this thread.
Ioannis Aggelos
on 29 Apr 2024
wow that was helpful (it wasnt)
Please note:
- With matrices, the first dimesion is always the number of row, the second is the number of columns. So in this case A is 5x5 (size(A) would return [5,5]) and A4 is 4x2 (size(A4) would return [4,2]).
- A4 here seems composed of two "stacked" (or vertically concatenated) 2x2 sub-matrices of A
A possible way to obtain A4 from A is the following;
A = [1:5; 0.5*(-10:-6); 0.1*0:4; 10:-1:6; 2*(1:5)]
rows1 = [1, 2];
cols1 = [1, 2];
rows2 = [3, 4];
cols2 = [3, 4];
A4 = [A(rows1, cols1); A(rows2, cols2)]
@Ioannis Aggelos I hope this helps.
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!