How do i sort table rows based on other table rows ?

18 views (last 30 days)
Dear experiences..
i have two tables.. A and B..
where table A involves ( id, num, var1 , var2).., and table B involves (num, var1.....varn).. i need to sort either table A rows based on table B num order or vise versa... how do i perform this task ?
thanks

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 8 Jun 2017
[~,ii] = ismember(A.num,B.num);
B_sorted_as_A = B(ii,:);

More Answers (1)

Guillaume
Guillaume on 8 Jun 2017
sorting A according to B:
[isinB, whereinB] = ismember(tableA.num, tableN.num);
assert(all(isinB), 'some rows of A are not found in B);
[~, order] = sort(whereinB);
sortedtableA = tableA(order, :);

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!