Sorting a structure using Matlab2018

Hi
I want to sort this structure in descensind order using MATLAB 2018:
ten.cat=[7,2,4,1].
I used the following commands but it is still not sorted:
pp_1=ten;
TT = struct2table(pp_1) % convert to tables
gg=sortrows(TT,'cat') % sort
sortedpp_1 = table2struct(gg) % convert the table back to structure.
please, help

3 个评论

What is your question and with which problem can we help you? What exactly is not sorted?
Why not sorting it by:
ten.cat = [7,2,4,1];
ten.cat = sort(ten.cat)
@Jan, this should go as an answer as I see no way of improving on that with the information given.
@shamsuddeen, there's never any need to convert a structure to anything in order to operate on it. Certainly, converting a structure into a table and back is a complete waste of time for your purpose. In this case, the fact that ten is a structure is completely irrelevant anyway, you're not sorting a structure, but just one field of a scalar structure which is the same as any non-structure variable.

请先登录,再进行评论。

 采纳的回答

更多回答(1 个)

Hi,
Adjusting:
ten.cat=[7,2,4,1]
to:
ten.cat=[7;2;4;1]
gives what I think is the sought after results.

类别

在 帮助中心 和 File 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