How to sort a structure array based on a specific field
Ältere Kommentare anzeigen
How do we sort a structure array based on a specific field?
Akzeptierte Antwort
Weitere Antworten (1)
Norbert Nitzsche
am 25 Jul. 2019
Bearbeitet: Norbert Nitzsche
am 25 Jul. 2019
8 Stimmen
% suppose 's' is the struct array and you want to sort it by the values in field 'f_sortby'
[x,idx]=sort([s.f_sortby]);
s=s(idx);
1 Kommentar
Bruno Luong
am 3 Aug. 2020
Bearbeitet: Bruno Luong
am 3 Aug. 2020
"Using curly braces should work for both numerical and text values"
Not for me
>> s=struct('num', {1 2 3})
s =
1×3 struct array with fields:
num
>> s(1)
ans =
struct with fields:
num: 1
>> s(3)
ans =
struct with fields:
num: 3
>> [x,idx]=sort({s.num})
Error using sort
Input argument must be a cell array of character vectors.
Kategorien
Mehr zu Structures finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!