【发布时间】:2015-03-02 12:24:48
【问题描述】:
我有一个三维元胞数组,即 16x10x3,我希望将 :,:,1 :,:,2 和 :,:,3 中的所有值分别提取到矩阵的一列中。
我考虑过预先分配一个矩阵,然后只运行一个基本循环,例如:
for m=1:3
mat(:,m) = ([a{:,:,m}]);
end
有没有更有效的方法来做到这一点而不必依赖循环?
编辑::,:,1/2/3 之间有不同数量的值。
【问题讨论】:
-
单身是什么意思?你的意思是每个单元格中有不同数量的元素?或者你的意思是像浮动一样单?如果每个单元格中的元素数量不同。是否可以保证矩阵具有正确的维度?
-
我已经用单元格数组的一部分示例更新了 OP。这些值都是双精度值,但是每个第三维都有不同数量的条目。例如:,:,1总共可以包含150个条目,而:,:,2只能包含90个。
-
我不确定您的意思是我们是否可以保证矩阵具有正确的尺寸。
-
并用零填充“空”空格?
标签: arrays matlab matrix cell-array