Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何更改单元格数组中单个单元格的维度?(MATLAB)_Matlab - Fatal编程技术网

如何更改单元格数组中单个单元格的维度?(MATLAB)

如何更改单元格数组中单个单元格的维度?(MATLAB),matlab,Matlab,我一直在寻找一个解决方案,但我相信这是因为我有一些语法不正确。在下面的代码段中,“maxBlobs”的值是5。“colCount”是整数的单元格数组 % create cell array with 1 row, columns = number of occurences per cell, maxBlobs # of cells likeCent=cell(1,1,maxBlobs); % to store like blob count centroids for i = 1:maxB

我一直在寻找一个解决方案,但我相信这是因为我有一些语法不正确。在下面的代码段中,“maxBlobs”的值是5。“colCount”是整数的单元格数组

% create cell array with 1 row, columns = number of occurences per cell, maxBlobs # of cells
likeCent=cell(1,1,maxBlobs);  % to store like blob count centroids

for i = 1:maxBlobs % cell tracker
    val = colCount{1,1,i};% grabs number of occurences at this cell
    likeCent{1,1,i} = likeCent{1,val,i};
end
我的目标是将'likeCent{}'中每个单元格'i'内的列数从1更改为从'colCount'中的'i'第个单元格提取的相应值


谢谢大家!

我不明白你想做什么
likeCent
是一个1x5x5阵列。您正试图用
如ecent{1,val,i}
对其进行索引,除非
val
为1,否则索引将失败。我想你对细胞阵列有误解。单元数组是普通数组,但它存储的元素本身就是数组。不能更改数组中一列的大小,可以更改数组的大小,也可以更改单元格数组中包含的数组的大小。为了进一步帮助你,我需要更好地理解你想要实现的目标。@CrisLuengo啊,好的,谢谢你澄清这一点。我基本上要做的是创建一个由5个单元格组成的单元格数组,我将用
val
number个空数组或占位符填充该数组。因此,我在代码中的思维过程是以某种方式遍历
likeCent
中的每个单元格,并将其替换为
val
数组数。谢谢你的帮助!每个单元格包含一个数组,如果每个单元格中需要
val
不同的数组,则必须在单元格数组中收集它们。因此,您将对
进行索引,如ecent{1,1,i}{1:val}=[]
。但是,如果所有
val
数组的大小相同,则它们可以是单个数组,这样效率更高。