Сортировка массива ячеек, который состоит из структур в MATLAB? - PullRequest
1 голос
/ 02 августа 2020

Здравствуйте, надеюсь, вы все в порядке.

Прямо сейчас я работаю над заданием для MATLAB. У меня есть массив ячеек, который состоит из 6 структур с 6 полями в них. Массив ячеек выглядит так:

enter image description here

Each one of the structs also looks something like this:

введите описание изображения здесь

Мне нужно отсортировать этот массив ячеек по хранимым в них значениям totalCost. Не знаю, смогу ли я сделать это только с помощью функции сортировки. Я хочу, чтобы каждая структура в ячейках оставалась прежней после сортировки. Структура с наименьшим значением totalCost будет первой ячейкой в ​​массиве ячеек, и наоборот. Вы можете мне с этим помочь?

1 Ответ

1 голос
/ 02 августа 2020

Может быть, вы можете попробовать cellfun + getfield + sort как показано ниже

[~,I] = sort(cellfun(@(s) getfield(s,"totalCost"), OPEN));
OPENsort = OPEN(I);
...