Extracting elements from a matrix based on the maximum position in another matrix

8 ビュー (過去 30 日間)
Madan Kumar
Madan Kumar 2017 年 8 月 18 日
回答済み: José-Luis 2017 年 8 月 18 日
Hi, I have matrices A(100x96) and B(100x96). My aim is to find the value of element in A corresponding to position of max in B. [M, J]=max(B); % M gives max values and J gives position corresponding to max value of B. M & J have 1x96 dimension. Now I have to find values of A for position J. I know if manually I do like, A(J(1),1), A(J(2),2).. would give me required elements of A (but not suitable for large dimension). How to solve?Any suggestions. Thank you so much.

採用された回答

KL
KL 2017 年 8 月 18 日
arrayfun(@(j,f) A(j,f), J,1:size(A,2))

その他の回答 (1 件)

José-Luis
José-Luis 2017 年 8 月 18 日
a = rand(100,96);
b = rand(100,96);
[~,idx] = max(b);
result = a(sub2ind(idx,1:size(a,2)))

カテゴリ

Help Center および File ExchangeOperators and Elementary Operations についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by