标签: matlab if-statement cells
我有一个像这样的单元格数组:
我想在这个单元格数组中提取2的索引,所以我使用了这些代码行:
for i = 1:size(idx,1) if idx{i,1} ~= [] index = i; end end
但是代码不起作用。我的意思是如果因为它不理解2与[]的不同而导致debuger永远不会进入。你怎么建议我写代码? 请注意,该字符不会始终为2,也可能出现在其他索引中。
答案 0 :(得分:3)
要测试变量是否为空,请使用ISEMPTY函数。
要对单元格数组中的所有元素执行此操作,您可以使用CELLFUN:
index = find(~cellfun(@isempty, idx));
答案 1 :(得分:2)
在Matlab中,[]表示空,因此:
for i = 1:size(idx,1) if ~isempty(idx{i,1}) index = i; end end