2016-06-28 27 views

回答

2

解決方案

使用以下格式值:

res = ~any(~isnan(X(:))); 

如果解析度==真就意味着該矩陣只包含nan值。

X = nan(3,3) 
~any(~isnan(X(:))) 

X(1,2) = 0; 
~any(~isnan(X(:))) 

結果

ans = 1 
ans = 0 
+1

任何(〜isnan(X))都會做同樣的事情。它檢查是否有什麼不是南 – Finn

+0

工程就像一個魅力!謝謝! –

+1

我會再次檢查您編輯的帖子。我不認爲這是正確的。 –

-1

讓我們考慮X這是檢查楠

x = nan(1,100); 

的向量,如果所有的值都南,則可以做

if(~isempty(find(isnan(x)))) 
+0

太棒了。現在用'x = [1 2 3]'試一下'。怎麼了? –

+0

這是無效的MATLAB代碼('if'必須有'end')。另外,除非你重新定義'nan'函數返回空數組,否則'if'的參數總是'true'。 –

+0

@AnderBiguri我在我的文章中做了一個編輯,我忘了添加查找,現在嘗試'x = [1 2 3]',會發生什麼 – Umar