我有两个载体如下:
A= 5 x 10 ( 5 rows, 10 column)
B= 5 x 6 ( 5 rows , 6 column)
如何创建3D数组,意味着5 x 10 x 6
,但未填充零?
答案 0 :(得分:1)
我认为3D矩阵不是你想要的。我会建议以下选项:
选项1.单元阵列
>> A = rand(5,10); B = rand(5,6);
>> {A, B}
ans =
[5x10 double] [5x6 double]
选项2.细胞矩阵
>> clear C; for i=1:5, C{i,1} = A(i,:)'; C{i,2} = B(i,:)'; end; C
C =
[10x1 double] [6x1 double]
[10x1 double] [6x1 double]
[10x1 double] [6x1 double]
[10x1 double] [6x1 double]
[10x1 double] [6x1 double]
选项3.连接数组,然后简单地索引所需的部分。
>> C = [A,B]; size(C)
ans =
5 16
选项4.使用结构数组
>> clear C; for i=1:5, C(i).A = A(i,:)'; C(i).B = B(i,:)'; end; C
C =
1x5 struct array with fields:
A
B
如果您将3D矩阵视为立方体,将2D矩阵视为正方形,您应该看到您要做的是从两个正方形创建一个立方体,将立方体的体积留空(以及作为其他四方)。