Clear Filters
Clear Filters

How can I sort an array of structures based upon a particular field in MATLAB?

1 view (last 30 days)
WeChat Screenshot_20190420221641.png
I've got a eeg_data_all(cell,size = 1*35), which contains 35*3 cells maybe. I want to sort these data by the 'subid'. How can I do this?
  1 Comment
Walter Roberson
Walter Roberson on 20 Apr 2019
Each eeg_data_all{P,Q} is to be sorted separately by the subid field of its struct, or all eeg_data_all(:,:) are somehow to be sorted together, considering all of the subid for all of the cells?
Is there are reason why you stored struct in cell instead of using a nonscalar struct array?

Sign in to comment.

Answers (1)

Wenyi Xiao
Wenyi Xiao on 20 Apr 2019
I've solved this problem by the function nestedSortStruct
eeg_data_all{1,1} = nestedSortStruct(eeg_data_all{1,1}, 'subid'); %sort by subid


Find more on Structures in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!