Sort table with a specific order

3 views (last 30 days)
Iugo
Iugo on 12 Jun 2021
Commented: Iugo on 13 Jun 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!

Accepted Answer

Walter Roberson
Walter Roberson on 13 Jun 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,:);

More Answers (0)

Community Treasure Hunt

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

Start Hunting!