Concatenate 2D matrices into one 3D matrix with for loop

9 views (last 30 days)
I have a structure containing 557 376 x 376 double matrices. How do I concatenate the 2D matrices to create a 3D matrix with the size 376 x 376 x 557?
  2 Comments
Johanna Popp
Johanna Popp on 16 Jun 2021
I tried this, but didn't seem to work:
data_cell = struct2cell(data)
% convert structure into cell to be able to access individual matrices
% Individual matrices are accessed as follows: matrix_n = data_cell{n,1}.matrix
for k = 1:557
data_3D_matrix = cat(k,data_cell{k,1}.matrix)
end
Stephen23
Stephen23 on 16 Jun 2021
"Concatenate 2D matrices into one 3D matrix with for loop"
Is there a particular requirement to use a FOR loop?

Sign in to comment.

Answers (1)

Stephen23
Stephen23 on 16 Jun 2021
Edited: Stephen23 on 16 Jun 2021
  2 Comments
Johanna Popp
Johanna Popp on 16 Jun 2021
Thanks! But now I'm getting a structure with the dimensions 1x1x557 that has the string 'matrix' in it and not the actual 376x376 matrix of values...
Stephen23
Stephen23 on 16 Jun 2021
Please upload your actual data by clicking the paperclip button.

Sign in to comment.

Categories

Find more on Cell Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!