consider a nx2 matrix like:
A = [1 0.7 2 0.5 2 0.6 2 0.3 3 0.4 3 0.1 4 0.7 5 0.3 5 0.3]
I want to create mx2 matrix B subset of A where B as the properties:
- B(:1) = unique(A(:,1))
- If a value in column 1 of A appears more than once, then B will contain the row from A which has greatest value in column 2 of A
so the answer to the given example would be
B = [1 0.72 0.63 0.44 0.75 0.3]
I can easily do this with for-loops and stuff, but I was wondering if anyone could come up with an elegant MATLAB one-liner , or perhaps two- or three-liner? 🙂
(It makes my MATLAB skills better to see how the pros do it in one- two- or three-liners)
Thank you!
Best Answer