Filter löschen
Filter löschen

How to get an array of all field elements of a 1xN structure?

72 Ansichten (letzte 30 Tage)
Sebastian
Sebastian am 14 Mär. 2019
Kommentiert: MD Titoo am 6 Nov. 2022
Hi. I was not able to find an answer to my question, so I am asking it here. Is there a more direct way to get an array of all elements of a structure.field?
What I want is a direct one-liner which gives me the same as:
for ii = 1:length(Results)
Test(ii,1) = Results(ii).end_dates;
end
(Test is a 222x1 array)
something like:
Test = Results(:).end_dates
whereby this line somehow just gives me Results(1).end_dates, so just the first element of the field...
This is my structure: (a little bit small here, so also as an attachement)
  2 Kommentare
Matt
Matt am 14 Mär. 2019
Hi Sebastian,
You can do something like this with the commands:
Test = {Results.mid_time}
if you want the results in a cell array, or
Test = [Results.mid_time]
if you want the results in a vector.
Results.mid_time gives you a comma separated list of the elements, and the brackets {} or [] concatenate them together into an array.
I hope this helps.
Matt
Sebastian
Sebastian am 14 Mär. 2019
Bearbeitet: Sebastian am 2 Jul. 2020
Yeah thank you very much!
Continually learning new stuff =)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Adam Danz
Adam Danz am 14 Mär. 2019
Bearbeitet: Adam Danz am 14 Mär. 2019
If the values stored in .end_dates are scalars,
Test = [Results(:).end_dates]'; %Test will be column vector
If the values stored in .end_dates are row vectors of identical length,
Test = cell2mat({Results(:).end_dates}'); %Test will be matrix
If the values stored in .end_dates are column vectors of identical length,
Test = [Results(:).end_dates]; %Test will be a matrix
If the values stored in .end_dates are strings or matricies of uneqal size,
Test = {Results(:).end_dates}'; % Test will be a columnar cell array
  3 Kommentare
MD Titoo
MD Titoo am 6 Nov. 2022
thanks for the answer. Took me a while to find it.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by