How to arrange data

3 vues (au cours des 30 derniers jours)
Mohamed Merah
Mohamed Merah le 12 Août 2021
Commenté : Jakeb Chouinard le 12 Août 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

Réponse acceptée

Jakeb Chouinard
Jakeb Chouinard le 12 Août 2021
Modifié(e) : Jakeb Chouinard le 12 Août 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 commentaires
Mohamed Merah
Mohamed Merah le 12 Août 2021
That's exactly what I want.
Thank you Sir !
Jakeb Chouinard
Jakeb Chouinard le 12 Août 2021
Happy to help!
Cheers,
Jakeb

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by