How to get the values from some of the coordinates?

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 :')

 採用された回答

Jan
Jan 2012 年 4 月 30 日

1 投票

Y = A(sub2ind(size(A), B(:,1), B(:,2)));

2 件のコメント

Isti
Isti 2012 年 4 月 30 日
thank you :)
Andrei Bobrov
Andrei Bobrov 2012 年 4 月 30 日
A(bsxfun(@minus,B,[0 1])*[1;size(A,1)])

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeAerospace Blockset についてさらに検索

質問済み:

2012 年 4 月 30 日

Community Treasure Hunt

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

Start Hunting!

Translated by