Use index from max() to extract matching values from another array
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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!
0 commentaires
Réponse acceptée
David Young
le 16 Déc 2014
Bmax = B(sub2ind(size(B), I, 1:size(B,2)))
4 commentaires
Ram
le 29 Juil 2018
Modifié(e) : Ram
le 29 Juil 2018
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.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!