How to efficiently sort a vector relative to a reference vector

1 visualización (últimos 30 días)
Dear Coder, The objective is to sort a matrix B with respect to the number in a vector A. The following code was implement to achieve the objective. However, I wonder if another more compact (w/o the FOR loop) can also be realize?. I really appreciate for any suggestion.
load('help_sort.mat');
RefMats=RefMat;
ToSorts=ToSort;
c_m=1;
row_locv_CELL=zeros(1,size(RefMats,1));
for f_x=1:size(RefMats,1)
row_locv_CELL(c_m)=find(ToSorts(:,1)==RefMats(f_x));
c_m=c_m+1;
end
relative2REF=ToSorts(((row_locv_CELL))',:);

Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 24 de Nov. de 2017
Editada: Andrei Bobrov el 24 de Nov. de 2017
[~,ii] = ismember(RefMat,ToSort(:,1));
relative2REF = ToSort(ii,:);

Más respuestas (0)

Categorías

Más información sobre Shifting and Sorting Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by