Matrix Indexig or how to access values of a matrix
2 views (last 30 days)
Show older comments
Philipp ter Schiphorst
on 5 May 2020
Commented: Philipp ter Schiphorst
on 6 May 2020
Hallo dear forum,
I just don't find a problem for my actually simple problem.
I have the following matrix:
A = magic(4)
I now want the values of the matrix in position:
value1 = A(1,1)
value2 = A(2,2)
value3 = A(3,1)
My actual matrix indexes are in a vector in this form:
index = [1 1;2 2;3 1];
My solution (that is obviously wrong) would be:
solution = A(index)
Is there an easy way without using loops?
Thank you so much!
0 Comments
Accepted Answer
Tommy
on 5 May 2020
You could convert to linear indices:
solution = A(sub2ind(size(A),index(:,1),index(:,2)));
More Answers (0)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!