用冒号在matlab中矢量化多维单元格数组

时间:2016-03-07 12:24:43

标签: matlab math

如果我有一个单元格数组:

example=cell(dim1,dim2,dim3);

我想访问以下形状的值:

example1{:}{:}{1} = rand(20,1);

我该怎么办?重要的是要知道我想保留这种单元阵列的形状,即修改值但具有相同类型的多维单元阵列。

1 个答案:

答案 0 :(得分:0)

我想现在我明白了你的问题。

mymatrix(:,:,:,1)=num2cell(rand(size(mymatrix(:,:,:,1))));

使用()索引的最简单方法是返回单元格,而不是以逗号分隔的单个元素列表。在右侧使用具有相同索引表达式的rand(size(x))确保您获得了正确数量的元素。左侧是一个单元格,因此您必须将右侧转换为单元格。