3

我有一个像这样的单元格数组:
在此处输入图像描述

我想在这个单元格数组中提取 2 的索引,所以我使用了这些代码行:

for i = 1:size(idx,1)  
    if idx{i,1} ~= []  
       index = i;  
    end  
end  

但代码不起作用。我的意思是调试器永远不会进入,因为它不明白 2 与 [] 不同。为什么?你建议我如何编写代码?
请注意,字符并不总是 2,它也可能出现在其他索引中。

4

2 回答 2

3

要测试您的变量是否为空,请使用ISEMPTY函数。

要对单元格数组中的所有元素执行此操作,您可以使用CELLFUN

index = find(~cellfun(@isempty, idx));
于 2013-03-26T15:15:07.520 回答
2

在 Matlab 中,[] 表示空,因此:

for i = 1:size(idx,1)  
   if ~isempty(idx{i,1})
      index = i;  
   end  
end  
于 2013-03-26T15:19:55.140 回答