2

我有 5 个不同维度的矩阵(n = 256、512、1024、2048 和 4096),我想知道如何将它们存储在一个数组中(稍后我可以在 for 循环中迭代)。我试着做 {\tt matArray = [ABCDE];} 但它说 horzcat 需要同意的尺寸。我也尝试过使用单元格,但我可能没有正确使用它们,因为我收到一条错误消息,上面写着“无法从双重单元格转换为单元格”。这是给我一个错误的代码:

A=randi(9, 256);
B=randi(9, 512);
C=randi(9, 1024);
D=randi(9, 2048);
E=randi(9, 4096);
matArray=cell(1,5);
matArray(1)=A;
matArray(2)=B;
matArray(3)=C;
matArray(4)=D;
matArray(5)=E;

你们知道发生了什么吗?提前致谢。

4

2 回答 2

5

采用matArray{1}=A;

这就是您处理单元格元素的方式。您可以稍后使用matArray{1}等来引用它。

你可以用一个简单的语句来初始化matArray所有的矩阵:

matArray = {A; B; C; D; E};

请注意使用花括号进行单元初始化。

于 2013-02-17T00:09:19.370 回答
-1

您需要分号来进行垂直连接。

matArray = [A; B; C; D; E];
于 2013-02-17T00:13:54.273 回答