How to arrange data

Illustration
Mohamed_merah - 2021-10-25T11:26:03+00:00
Question: How to arrange data

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  

Related Questions

  • How to arrange data
  • Expert Answer

    Profile picture of John Michell John Michell answered . 2025-11-20

    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


    Not satisfied with the answer ?? ASK NOW

    Get a Free Consultation or a Sample Assignment Review!