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

15 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

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

Più risposte (1)

Guillaume
Guillaume il 8 Giu 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, :);

Categorie

Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by