# Sort every single row

1 view (last 30 days)
Patrick on 18 Feb 2015
Edited: Stephen23 on 18 Feb 2015
How can I sort every single row of a matrix in ascending order? For example [16 2 3 13; 5 11 10 8] becomes [2 3 13 16;5 8 10 11] Thanks for help!
##### 0 CommentsShow -2 older commentsHide -2 older comments

Sign in to comment.

### Accepted Answer

per isakson on 18 Feb 2015
One way
M = [16 2 3 13; 5 11 10 8] ;
for rr = 1 : size( M, 1 )
M( rr, : ) = sort( M( rr , : ), 'ascend' );
end
##### 2 CommentsShow NoneHide None
Patrick on 18 Feb 2015
Thank you man!
Stephen23 on 18 Feb 2015
Edited: Stephen23 on 18 Feb 2015
Doing this in a loop is poor MATLAB code. Use sort's optional second dimension argument instead:
>> A = [16 2 3 13; 5 11 10 8]
>> sort(A,2)
ans =
2 3 13 16
5 8 10 11
This is faster, neater and much more robust.

Sign in to comment.

### Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!