Sort table with a specific order

19 ビュー (過去 30 日間)
Iugo
Iugo 2021 年 6 月 12 日
コメント済み: Iugo 2021 年 6 月 13 日
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!

採用された回答

Walter Roberson
Walter Roberson 2021 年 6 月 13 日
[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 件のコメント
Iugo
Iugo 2021 年 6 月 13 日
Thank you so much @Walter Roberson!! Nailed it!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeShifting and Sorting Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by