Azzera filtri
Azzera filtri

How to find the index of top k max values in the matrix

15 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

Bruno Luong
Bruno Luong il 24 Lug 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 Commenti
Hang Vu
Hang Vu il 24 Lug 2019
Thank you so much for the help! and your time also.

Accedi per commentare.

Più risposte (1)

madhan ravi
madhan ravi il 24 Lug 2019
Modificato: madhan ravi il 24 Lug 2019
[~,idx]=sort(A,'descend');
B=idx(1:3)
C=setdiff(idx,B)

Community Treasure Hunt

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

Start Hunting!

Translated by