Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
我有一个二维单元阵列。我要执行以下操作:
y = some_number; row(x) = [row(x) another_row(y)]; 但是,直到发生这种情况才定义row(x),所以行不起作用!当未定义row(x)时,如何简单地将another_row(y)追加到row(x)上? 抱歉,使用其他语言很容易做到这一点,但是我不确定在MATLAB中如何实现! 谢谢。 回答: 您可以首先将row初始化为空数组(或单元格数组),如下所示: 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 有关创建和连接矩阵的更多信息,请参见文档。 还应注意,像这样的增长阵列不是很有效。假设您知道数组的最终大小,则预分配数组是一个更好的主意。如果您不知道最终大小, 则以块形式分配数组元素可能会比一次将它们分配一次更有效。 更多&回答... |
![]() |
![]() |