how to convert struct to vector?

20 views (last 30 days)
Leila
Leila on 27 Jan 2021
Answered: Kanika Gupta on 4 Feb 2021
hi every body
I have a structure that it's fields are also structures with diferent length.
how could I convert them to a vector?

Answers (1)

Kanika Gupta
Kanika Gupta on 4 Feb 2021
If you requirement is to access strcuture of structures as cell arrays, try this:
% For every sub strcuture
C1 = num2cell(struct2cell(subStruct),3);
C1 = cellfun(@(c)[c{:}],C1,'uni',0);
C = num2cell(struct2cell(subStrcut2),3);
C = cellfun(@(c)[c{:}],C,'uni',0);
C1 = [C1 C]
% To create struct of struct to cell
T = cell2struct(C1,F,1) % C1 will be concatenation of C1 cells for every sub struct
T = num2cell(struct2cell(T),3);
T = cellfun(@(c)[c{:}],T,'uni',0);

Categories

Find more on Structures in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!