Extracting data from struct as array
Ältere Kommentare anzeigen
Hi, I have a following structure:
S(1).a = 1:10;
S(2).a = 11:20;
S(3).a = 21:30;
I want the output in the following format:
y = [1:10; 11:20; 21:30];
Using [S(1:3).a] concatenates it in a single direction. Is there a better way (other than for loop) to extract the data in the requisite format?
Thank you,
Rashi
Akzeptierte Antwort
Weitere Antworten (1)
You can use "vertcat()" for using the same. Refer to the following code:
% Your structure
S(1).a = 1:10;
S(2).a = 11:20;
S(3).a = 21:30;
% Extracting and concatenating
y = vertcat(S.a); % This works directly because of how MATLAB handles struct arrays
y
For more information on the function "vertcat()", refer to the following documentation:
2 Kommentare
Rashi Monga
am 13 Jun. 2024
Bearbeitet: Rashi Monga
am 13 Jun. 2024
Ganesh
am 13 Jun. 2024
% After using vertcat
y = y(:,1:5);
Kategorien
Mehr zu Logical finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!