0
我的變量及其值,在if
條件語句Matlab的:如果條件對空矩陣工作,不能正常工作
leftoverROI1s{1}= [11 15];
missinglabelsinimage{1}
是一個空矩陣。
我想執行一個for
循環只有當我在if
聲明兩個條件都爲真,即:
if ~isempty(leftoverROI1s{1}) && ~isempty(missinglabelsinimage{1})
for % loop for each element in non-empty `missinglabelsinimage` structure array.
% Add a scalar to each element of non-empty `missinglabelsinimage` structure array
...
end % end for loop
end % end if
我的程序控制進入for
循環(這是我期望的,它不應該,如果有一個空missinglabelsinimage{1})
和控制正在missinglabelsinimage{1}
(空矩陣),這顯然給了我,我想一個標量添加到我的「非空」 missinglabelsinimage{1}
。
我無法理解的錯誤在我的錯誤條件。任何幫助,將不勝感激。
PS:我查了上述變量
~isempty(missinglabelsinimage{1})
ans =
0
~isempty(leftoverROI1s{1})
ans =
1
missinglabelsinimage{1}
ans =
Empty matrix: 1-by-0
我不明白你在問什麼。如果'missinglabelsinimage {1}'是空的,並且你說這是,那麼你的'if'語句將阻止'for'循環執行,這看起來正是你想要的。 – horchler
報告完整的錯誤消息和一個可重複的示例。 – Oleg
編寫一個能夠重現問題的函數(不是腳本)。 –