How to arrange data

3 visualizzazioni (ultimi 30 giorni)
Mohamed Merah
Mohamed Merah il 12 Ago 2021
Commentato: Jakeb Chouinard il 12 Ago 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

Risposta accettata

Jakeb Chouinard
Jakeb Chouinard il 12 Ago 2021
Modificato: Jakeb Chouinard il 12 Ago 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]
horzVert = 300×2
1 300 2 299 3 298 4 297 5 296 6 295 7 294 8 293 9 292 10 291
  2 Commenti
Mohamed Merah
Mohamed Merah il 12 Ago 2021
That's exactly what I want.
Thank you Sir !
Jakeb Chouinard
Jakeb Chouinard il 12 Ago 2021
Happy to help!
Cheers,
Jakeb

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by