Extracting and sorting data in a column

1 vue (au cours des 30 derniers jours)
Olu B
Olu B le 8 Août 2019
Modifié(e) : madhan ravi le 8 Août 2019
Hi For example I have a 19 x1 colunmn called Mx and I need to find the maximum value in every 2 rows till the end of the column.
Mx
20
22
23
21
34
54
23
14
67
56
34
32
21
12
43
23
56
34
32
  2 commentaires
Alex Mcaulley
Alex Mcaulley le 8 Août 2019
Can you show the expected result in your example?
Olu B
Olu B le 8 Août 2019
The expected result would be
NewMx = [22 23 54 23 67 34 21 43 56 32]
Cheers

Connectez-vous pour commenter.

Réponses (2)

madhan ravi
madhan ravi le 8 Août 2019
Modifié(e) : madhan ravi le 8 Août 2019
Works for odd as well as even number of elements:
NewMx = max(reshape([Mx(:);...
-Inf(mod(numel(Mx),2))],2,[])) % thank you Guillaume
  7 commentaires
Jos (10584)
Jos (10584) le 8 Août 2019
My apologies Madhan!
madhan ravi
madhan ravi le 8 Août 2019
No problem Jos :)

Connectez-vous pour commenter.


Jos (10584)
Jos (10584) le 8 Août 2019
This works for both an even or an odd number of elements:
N = 11 ; % odd
Mx = randi(10, N, 1)
M2 = accumarray(ceil((1:numel(Mx))/2).', Mx, [], @max)

Catégories

En savoir plus sur Mathematics 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!

Translated by