Acquiring related Matrix Members

2 ビュー (過去 30 日間)
Umit
Umit 2012 年 8 月 7 日
I have a n by m matrix A and 1 by n array B. Assume
A = rand(3,5)
B = [3;5;2]
How can I get 1st rows 3rd element, 2nd rows 5th element and 3rd rows 2. element of A matrix w/o for loop?
Each rows related element is the member of B array as you can see?

採用された回答

Matt Fig
Matt Fig 2012 年 8 月 7 日
編集済み: Matt Fig 2012 年 8 月 7 日
A(sub2ind(size(A),1:length(B),B(:)'))
or
A((1:length(B))+(B(:)'-1)*size(A,1))
  2 件のコメント
Andrei Bobrov
Andrei Bobrov 2012 年 8 月 7 日
Hi Matt!
Matt Fig
Matt Fig 2012 年 8 月 7 日
Hi Andrei :-).

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

その他の回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2012 年 8 月 7 日
編集済み: Andrei Bobrov 2012 年 8 月 7 日
out = A(sub2ind(size(A),(1:numel(B))',B(:)));

カテゴリ

Help Center および File ExchangeMultidimensional Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by