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 CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by