Combine 2D matrices to form 3D one in Matlab

前端 未结 2 1571
旧时难觅i
旧时难觅i 2021-01-20 16:59

I have 3 20x2 double arrays A, B and C. I want to combine them in one 3d array D so that D(:,:,1)

相关标签:
2条回答
  • 2021-01-20 17:26

    Using cat to concatenate along the third dimension might be the elegant way -

    D = cat(3,A,B,C)
    

    Here, the first input argument 3 specifies the dimension along which the concatenation is to be performed.

    0 讨论(0)
  • 2021-01-20 17:31

    Like this?

    A = 1*ones(20,2);
    B = 2*ones(20,2);
    C = 3*ones(20,2);
    
    D = zeros(20,2,3);  % Preallocate the D Matrix
    D(:,:,1) = A;       
    D(:,:,2) = B;
    D(:,:,3) = C;
    
    D(1,1,1)  % prints 1
    D(1,1,2)  % prints 2
    D(1,1,3)  % prints 3
    
    0 讨论(0)
提交回复
热议问题