sort a matrix in a specific way

Dear All, Although I know how to sort a single column or row in an ascending or descending way, but I do not know how to sort a higher dimension matrix based on a single column. I hope the following example illustrate my point:
12 0 1 65
5 1 0 340
13 2 1 100
9 0 0 0
I need the matrix to be sorted based on the first column. Basically I need all rows to be sorted based on a simple sort on the first column. Here is the desired output:
5 1 0 340
9 0 0 0
12 0 1 65
13 2 1 100
I hope you will help me to figure how to sort it out! Thank you so much HRJ

 Accepted Answer

Stephen23
Stephen23 on 22 Jun 2015
Edited: Stephen23 on 22 Jun 2015
You can use sortrows for this:
>> A = [12,0,1,65; 5,1,0,340; 13,2,1,100; 9,0,0,0]
A =
12 0 1 65
5 1 0 340
13 2 1 100
9 0 0 0
>> sortrows(A,1)
ans =
5 1 0 340
9 0 0 0
12 0 1 65
13 2 1 100

2 Comments

Thanks. I was not aware of this syntax I do appreciate your help
Stephen23
Stephen23 on 22 Jun 2015
Edited: Stephen23 on 22 Jun 2015
My pleasure. You can also Accept an answer that resolves your question.

Sign in to comment.

More Answers (0)

Categories

Asked:

on 22 Jun 2015

Edited:

on 22 Jun 2015

Community Treasure Hunt

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

Start Hunting!