7

我知道我可以isnan用来检查单个元素,例如

for i=1:m
    for j=1:n
        if isnan(A(i,j))
            do something
        end
    end
end

但是,相反,我想做的是

 if any(isnan(A))
      do something
 end

当我尝试这样做时,它不会进入争论,因为它被认为是错误的。如果我只是输入any(isnan(A)),我就会得到1 0 1。那么我该怎么做呢?

4

1 回答 1

8
any(isnan(A(:)))

因为A是一个矩阵,isnan(A)也是一个矩阵并且any(isnan(A))是一个向量,而该if语句确实需要一个标量输入。无论初始大小如何,使用该(:)符号都会变平A为向量。

于 2013-02-13T20:42:24.293 回答