Use index from max() to extract matching values from another array

조회 수: 1 (최근 30일)
Leo Simon
Leo Simon 2014년 12월 16일
편집: Ram 2018년 7월 29일
Suppose I have 2 n x m arrays A and B and I get the maximum element of each column of A with
[~,I] = max(A)
Now I want to use I to extract the elements of B that correspond to the max element of each column of A.
For example (the example itself is of no particular interest)
A = rand(5)
B = A.^2
[~,I] = max(A)
Now I would like to have a one line command that extracts from B a row vector consisting of, for each j, the I'th element of column j.
Thanks!

채택된 답변

David Young
David Young 2014년 12월 16일
Bmax = B(sub2ind(size(B), I, 1:size(B,2)))
  댓글 수: 4
Leo Simon
Leo Simon 2018년 7월 29일
I'm afraid I can't understand what you are trying to do. Could you augment the code snippet above to make it an MWE. This would require a sample specification of mydata. I also can't see the relationship between your text and the sample code.
Ram
Ram 2018년 7월 29일
편집: Ram 2018년 7월 29일
thanks for responding, attached file as max with its indexand mydata has to find those index values and place it to a new cell. for example, i have index value 690, i am finding in mydata which has (8.1510,110.9065) but i need only first col value only for every index.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Operators and Elementary Operations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by