How to find the index of top k max values in the matrix
21 views (last 30 days)
Show older comments
A=[ 5 40 10 9 2 1 8 12 33 23]
find index of top 3 max values as:B= [ 2 9 10]
and return the rest index value in another array C=[1 3 4 5 6 7 8]
Thank you.
0 Comments
Accepted Answer
Bruno Luong
on 24 Jul 2019
>> A=[ 5 40 10 9 2 1 8 12 33 23]
A =
5 40 10 9 2 1 8 12 33 23
>> [~,B]=maxk(A,3)
B =
2 9 10
>> C=setdiff(1:length(A),B)
C =
1 3 4 5 6 7 8
10 Comments
More Answers (1)
madhan ravi
on 24 Jul 2019
Edited: madhan ravi
on 24 Jul 2019
[~,idx]=sort(A,'descend');
B=idx(1:3)
C=setdiff(idx,B)
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!