Matlab 简单二维单元阵列附加
我有一个二维细胞阵列。我想做以下工作:Matlab 简单二维单元阵列附加,matlab,Matlab,我有一个二维细胞阵列。我想做以下工作: y = some_number; row(x) = [row(x) another_row(y)]; 但是,直到发生这种情况,才定义行(x),所以它不起作用!当行(x)可能未定义时,如何将另一行(y)附加到行(x)上 抱歉,这在其他语言中很容易做到,但我不确定在MATLAB中如何做到 谢谢。您可以先将行初始化为空数组(或单元格数组),如下所示: row = []; %# Empty array row = {}; %# Empty cell arr
y = some_number;
row(x) = [row(x) another_row(y)];
但是,直到发生这种情况,才定义行(x),所以它不起作用!当行(x)可能未定义时,如何将另一行(y)附加到行(x)上
抱歉,这在其他语言中很容易做到,但我不确定在MATLAB中如何做到
谢谢。您可以先将
行
初始化为空数组(或单元格数组),如下所示:
row = []; %# Empty array
row = {}; %# Empty cell array
然后可以将新行附加到数组(或将新单元格附加到单元格数组),如下所示:
有关详细信息,请参阅文档
还应注意,像这样不断增长的阵列效率不高,假设你知道它的最终尺寸,这是一个更好的主意。如果您不知道最终的大小,可能会比一次分配一行更有效。还不完全清楚您要做什么。您能否给出一个具体的例子,说明您的阵列中可能包含哪些内容,以及您希望在阵列中包含哪些内容?或者用另一种语言编写的代码?
row = [row; another_row(y)]; %# Append a row to the array
row = [row; {another_row(y)}]; %# Append a cell to the cell array