在 Matlab 中将 2D 矩阵组合成 3D 矩阵
Combine 2D matrices to form 3D one in Matlab
我有 3 个 20x2 double
数组 A
、B
和 C
。我想将它们组合成一个 3d 数组 D
以便 D(:,:,1)
将 return A
、D(:,:,2)
将 return B
和D(:,:,3)
将 return C
。
像这样?
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
使用cat
沿三维连接可能是优雅的方式-
D = cat(3,A,B,C)
此处,第一个输入参数 3
指定执行串联的维度。
我有 3 个 20x2 double
数组 A
、B
和 C
。我想将它们组合成一个 3d 数组 D
以便 D(:,:,1)
将 return A
、D(:,:,2)
将 return B
和D(:,:,3)
将 return C
。
像这样?
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
使用cat
沿三维连接可能是优雅的方式-
D = cat(3,A,B,C)
此处,第一个输入参数 3
指定执行串联的维度。