在Matlab中,将2D矩阵组合成3D矩阵

3

我有三个 20x2双精度 数组 A, BC。我想将它们合并成一个三维数组 D,使得 D(:,:,1) 返回 AD(:,:,2) 返回 BD(:,:,3) 返回 C


2个回答

5
使用cat沿第三个维度拼接可能是一种优雅的方法。
D = cat(3,A,B,C)

这里,第一个输入参数 3 指定了要执行连接操作的维度。


1
像这样吗?
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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接