Sort table with a specific order

4 vues (au cours des 30 derniers jours)
Iugo
Iugo le 12 Juin 2021
Commenté : Iugo le 13 Juin 2021
Hello everyone!
I have a table with two columns, the first is called ScanID , which contains the id's of some patients, and the second is called Site, which contains the site where the patients belong, going from 1 to 8. What I want is to order the rows of that table based on that Site column values, with the following order: 3,4,5,6,7,1,8.
How can I achieve this?
Thank you so much!

Réponse acceptée

Walter Roberson
Walter Roberson le 13 Juin 2021
[found, idx] = ismember(T.Site, [3,4,5,6,7,1,8]);
if any(~found)
error('Site not on approved list, first at row %d', find(~found,1));
end
[~, sortorder] = sort(idx);
newT = T(sortorder,:);
  1 commentaire
Iugo
Iugo le 13 Juin 2021
Thank you so much @Walter Roberson!! Nailed it!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Shifting and Sorting Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by