Мне интересно, как лучше всего извлечь данные из структурированного массива в 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