Sort with respect to identical elements in a column.

3 views (last 30 days)
Hari krishnan
Hari krishnan on 18 Oct 2018
Commented: Hari krishnan on 18 Oct 2018
I have a matrix as shown below. The first column contains identity of objects and the second and third column corresponds to there detection times. What i want to do is to keep all the elements corresponds to the identical elements in the first column together.
eg: a = [51, 1.5, 3.8; 52, 1.8, 9.6; 53, 2.1, 8.8; 51, 3.5, 9.9; 54, 8.5, 10.23,51, 1.5, 3.8 ];
Is there a way to do this rather than using for loops and conditions? Any help will be appreciated.

Accepted Answer

Stephen23
Stephen23 on 18 Oct 2018
Edited: Stephen23 on 18 Oct 2018
>> a = [51,1.5,3.8;52,1.8,9.6;53,2.1,8.8;51,3.5,9.9;54,8.5,10.23;51,1.5,3.8]
a =
51 1.5 3.8
52 1.8 9.6
53 2.1 8.8
51 3.5 9.9
54 8.5 10.23
51 1.5 3.8
>> sortrows(a) % sort by 1st col, 2nd col, etc.
ans =
51 1.5 3.8
51 1.5 3.8
51 3.5 9.9
52 1.8 9.6
53 2.1 8.8
54 8.5 10.23
>> sortrows(a,1) % sort only by 1st col.
ans =
51 1.5 3.8
51 3.5 9.9
51 1.5 3.8
52 1.8 9.6
53 2.1 8.8
54 8.5 10.23

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by