Oscar Santacruz
Oscar Santacruz

Reputation: 85

Sort MATLAB array in descending order

I am using MATLAB. I have a question about how to sort an matrix in descending order along one column of a matrix and have the rest of the row values follow suit.

For example,

A = [1 30; 2 40; 3 10; 4 50; 5 20]

becomes

B = [4 50; 2 40; 1 30; 5 20; 3 10]

Thanks

Upvotes: 4

Views: 17966

Answers (1)

Bob Gilmore
Bob Gilmore

Reputation: 13758

Use the SORTROWS function, specifying that you want to sort using the second column in descending order...

B = sortrows(A, -2);

Here, the 2 means "sort in column 2," and the negative sign in front of the 2 means "in de-scending order." See the MATLAB documentation for more information.

Upvotes: 14

Related Questions