【发布时间】:2014-06-22 01:34:27
【问题描述】:
我想在嵌套 for-loops 的运行时从 Matalb 中的单元格数组中删除一些单元格,以便我想永久删除单元格并在下一个迭代,它不会考虑单元格感染它的下一个单元格作为它的位置,我如何在 Matlab 中执行此操作,或者在这种情况下避免单元格数组的任何其他建议。我的单元格数组M 包含对象信息,P 是位置值。
我的代码:
for ii=1:1000
for jj=1:20
M{jj}=P{jj}(ii,:);
if (P{jj}(ii,:) ~= 0)
%here I want to delete M(jj) or M{jj} and also P(jj) or P{jj}
% My try M(jj) = []; M= M(~cellfun('isempty',M));
%but it gives error when the next iteration starts.
end
end
end
【问题讨论】:
-
我认为它不会到达条件语句
if (M{jj} == 0 )内部,因为您在条件语句之前分配M{jj}的方式。 -
这只是一个例子,请检查编辑的代码,在这种情况下我想删除一些
jj,比如jj=2。
标签: arrays matlab loops for-loop cell