How to arrange data
1 view (last 30 days)
Show older comments
Mohamed Merah
on 12 Aug 2021
Commented: Jakeb Chouinard
on 12 Aug 2021
Hello, I use this code which is linked to a Simulink file to simulate and get data used for Artificial Neural Network. The data shown below are saved in structur format and each case contains 30001 data.
So I want to arrange data to get only one matrix with 2 rows and (30001*6) lines by modifying the matlab code or,
save directly the data acquired from MDL file under a matrix of 2 lines and 180006 lines.
Thank you.
j=1;
for ref_P=10:1:12;
for ref_Q=-10:1:-9;
options = simset('SrcWorkspace','current');
S = sim('gti_V3_15_NN',[],options);
%%%%%%%%%%%%%%%%%%%%%%%%%%%
Delta =data_out(:,1); % from workspace
Vom =data_out(:,2);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
out(j).Delta=Delta;
out(j).Vom=Vom;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Ref_P(j,1) = ref_P;
Ref_Q(j,1) = ref_Q;
%%%%%%%%%%%%%%%%%%%%%%%%%%%
j= j+1;
end
end
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/710147/image.png)
0 Comments
Accepted Answer
Jakeb Chouinard
on 12 Aug 2021
Edited: Jakeb Chouinard
on 12 Aug 2021
You could likely extract and concatenate this data using a for loop or two, but a more elegent solution may be in using struct2cell(). Your fields will become a column vector of cells with their values being stored in a 3rd dimensional vector. From these, you could extract the data you're looking for using vertcat and brace indexing—See Below:
%% Setup:
bear = struct;
bear(1).paw = (1:100)';
bear(2).paw = (101:200)';
bear(3).paw = (201:300)';
bear(1).tail = (300:-1:201)';
bear(2).tail = (200:-1:101)';
bear(3).tail = (100:-1:1)';
%% Execution:
tempCell = struct2cell(bear);
vertPaw = vertcat(tempCell{1,1,:}); % Paw is the 1st row, 1st column entry of the cell array
vertTail = vertcat(tempCell{2,1,:}); % Tail is the 2nd row, 1st column entry of the cell array
horzVert = [vertPaw, vertTail]
2 Comments
More Answers (0)
See Also
Categories
Find more on Database Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!