How do I sort the max values from a matrix ?

1 view (last 30 days)
Pierre Lonfat
Pierre Lonfat on 23 May 2017
Edited: KSSV on 23 May 2017
Hello everyone !
In the following 577X2 matrix I have tickers of stocks in the first column and the number of occurence in the second one.
How would I keep the 80 first stocks (tickers) that occurred the most ?
Many thanks in advance !
Pierre

Accepted Answer

Guillaume
Guillaume on 23 May 2017
Edited: Guillaume on 23 May 2017
[~, order] = sort(Occurences.Momentum(:, 2), 'descend');
top80 = Occurences.Momentum(order(1:80), :)
Or:
sortedData = sortrows(Occurences.Momentum, 2, 'descend');
top80 = sortedData(1:80, :)

More Answers (1)

KSSV
KSSV on 23 May 2017
Edited: KSSV on 23 May 2017
Let data be you 577X2 data.
[val,idx] = sort(data(:,2),'descend') ; % sort the second column in descending order
iwant = data(idx(1:80),:) ; % pick first 80 most occurring stocks

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by