Extract data from matrices and arrays using vectors of coordinates
72 views (last 30 days)
Show older comments
Ariel Kessel Akerman
on 28 Sep 2021
Commented: Ariel Kessel Akerman
on 28 Sep 2021
I have a matrix and I want to use two vectors of row and column index coordinates in order to extract the elements from it. In particular, I can define a 3 x 3 matrix as
A = [1 2 3; 3 4 5; 8 9 10]
And I want to use two vectors to extract the elements (2,2), (3,1), (1,3). My intention is to do this using the vectors for each corrdinates. I have been trying to do it by writing
A([2 3 1], [2 1 3])
but of course this is not working. I believe that this is a basic sintax issue.
Thank you so much
0 Comments
Accepted Answer
the cyclist
on 28 Sep 2021
Edited: the cyclist
on 28 Sep 2021
Using your example:
A = [1 2 3; 3 4 5; 8 9 10]
linearIndex = sub2ind(size(A),[2 3 1], [2 1 3])
A(linearIndex)
More Answers (0)
See Also
Categories
Find more on Matrix Indexing 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!