Лучший способ сохранить размеры, используя изменение формы из массива структур в Matlab

Мне интересно, как лучше всего извлечь данные из структурированного массива в Matlab и сохранить размерность, если я использую изменение формы при их обработке.

Скажем, у меня есть следующий массив структур введите изображение описание здесь

Чтобы извлечь все значения b, я бы это сделал

Но при этом возникает проблема, заключающаяся в том, что размерность b потерян, поскольку теперь он рассматривается как вектор. Если я изменю форму, чтобы попытаться восстановить эту размерность, я получу

которые все еще не являются исходными данными, потому что все четные строки поменяны местами. Поэтому единственное, что мне пришло в голову, это отменить замену четных строк с помощью

Поэтому мне интересно, существует ли лучший способ извлечь b из массива структур без необходимости делать изменение формы + даже переворот элементов.

Заранее спасибо!

K>> [myData.data(:).b]

ans =

   20.0183   19.8833   20.0183   19.8833   20.0182   19.8833   20.0183   19.8833   20.0182   19.8833
bb=reshape([myData.data(:).b]',[],2)

bb =

   20.0183   19.8833
   19.8833   20.0183
   20.0183   19.8833
   19.8833   20.0182
   20.0182   19.8833
K>> bb(2:2:end,:) = fliplr(bb(2:2:end,:))

bb =

   20.0183   19.8833
   20.0183   19.8833
   20.0183   19.8833
   20.0182   19.8833
   20.0182   19.8833
 
Кондрат
Вопрос задан13 мая 2024 г.

1 Ответ

2
Ермил
Ответ получен15 сентября 2024 г.

Ваш ответ

Загрузить файл.