How to get the values from some of the coordinates?

2 Ansichten (letzte 30 Tage)
Isti
Isti am 30 Apr. 2012
I have matrix A like this:
A =
2 1 4 5 2
3 4 5 1 2
5 3 5 4 3
3 2 1 9 3
7 1 8 2 4
Then I have a matrix that decribe list of the coordinates is like this:
B =
1 2
3 4
4 1
So, the coordinate we can take from matrix B above is (1,2), (3,4), (4,1).
Then I want to produce the vector Y that consist of the value of matrix A which located is took from matrix B.
So the vector Y that will be produced is like this:
Y =
1
4
3
What to do?
Thanks before :')

Akzeptierte Antwort

Jan
Jan am 30 Apr. 2012
Y = A(sub2ind(size(A), B(:,1), B(:,2)));
  2 Kommentare
Isti
Isti am 30 Apr. 2012
thank you :)
Andrei Bobrov
Andrei Bobrov am 30 Apr. 2012
A(bsxfun(@minus,B,[0 1])*[1;size(A,1)])

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by