Sorting matrices

1 view (last 30 days)
Jason
Jason on 6 Apr 2011
so I have two matrices:
A = [4 6 3 2 9 0 1 5 7 8]
B = [6 5 2 4 0 8 3 7 4 9]
I want to sort matrix A in ascending order, but I want B to correspond with the sorting so that the column match. so if I sort(A), I want B to look like this:
A = [0 1 2 3 4 5 6 7 8 9]
B = [8 3 4 2 6 7 5 4 9 0]
Matrix B can have more than one rows. B is not to be sorted, it just follow the sorting of matrix A. A and B can be in one matrix so as long as I can sort the first row, all the following rows will follow. I would like some ideas about doing this. Thanks.

Accepted Answer

Matt Fig
Matt Fig on 6 Apr 2011
[As,I] = sort(A);
Bs = B(I);
To sort along the rows, use the dim argument to SORT.
  5 Comments
Jason
Jason on 6 Apr 2011
Got it now. Thanks.
Mohamed Helmy
Mohamed Helmy on 26 Apr 2011
Thanksssssssss

Sign in to comment.

More Answers (1)

Tim Zaman
Tim Zaman on 6 Apr 2011
Append A to B so that
i believe the code is C=[A;B] so that:
C = [4 6 3 2 9 0 1 5 7 8;
6 5 2 4 0 8 3 7 4 9]
Then you say "sort(C,1)" so that the sorting is done for the first column
Have fun
PS makeup and layout in this textbox is awful
  1 Comment
Sean de Wolski
Sean de Wolski on 6 Apr 2011
What about it is awful?

Sign in to comment.

Categories

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

Tags

Products

Community Treasure Hunt

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

Start Hunting!