Keep proper Indexing after sorting

2 views (last 30 days)
M@lik Ali
M@lik Ali on 5 Feb 2013
Edited: Stephen23 on 21 Jan 2017
I have a matrix like below
fset(:,:,1) = rand(5,16);
fset(:,:,2) = rand(5,16);
fset(:,:,3) = zeros(5,16);
sorted_fset = sort(fset,3);
My problem is i have 999 small matrix in a big matrix like this means
fset(:,:,i),i=1,2,3,4....999
I represent the each image actually, now when i sort the matrix it sort for me but i cannot recognize the index of each image.
Like in above case
fset(:,:,3) will be fset(:,:,1)
but actually it was 3, so how i can recognize the image index after sorting in this case. if any confusion please comment

Answers (1)

Jan
Jan on 5 Feb 2013
Edited: Jan on 5 Feb 2013
[sorted_fset, index] = sort(fset, 3);
Matlab offers an exhaustive documentation which should be read in case of difficulties:
help sort
doc sort
  2 Comments
M@lik Ali
M@lik Ali on 6 Feb 2013
I tried to read from matlab help
i try this one, but how i can get the corresponding index from this.
Jan
Jan on 6 Feb 2013
Edited: Jan on 6 Feb 2013
I do not understand your comment. I've posted the method to get the sorting indices as 2nd output already. This method is explained in the mentioned help text also. So what are you looking for now?

Sign in to comment.

Categories

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

Tags

Community Treasure Hunt

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

Start Hunting!