How to sort a table (only 2 rows)

1 回表示 (過去 30 日間)
Peter Meier
Peter Meier 2020 年 7 月 27 日
回答済み: dpb 2020 年 7 月 27 日
Hello,
I have sorted a table. It works. But i dont want to sort the whole table i want to put the lowest value here -> 0 (column C) to the first row and the highest value here 258 to the last row. The whole row where 0 or 258 is should be changed to the first/ last row.
My Code:
T = struct2table( parameter.list); % convert the struct array to a table
sortedT = sortrows(T, 'value'); % sort the table by value
sortedS = table2struct(sortedT) % change it back to str
This Code sorts all rows of the table. From 0 to 258. (Column C)

回答 (1 件)

dpb
dpb 2020 年 7 月 27 日
[~,imin]=min(T.value);
[~,imax]=max(T.value);
T=[T(imin,:); T; T(imax,:)];
T([imin,imax],:)=[];
Or, save the two rows of interest, remove them from T and then add back.

カテゴリ

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