【发布时间】:2016-06-30 22:03:17
【问题描述】:
我有一个矩阵<1x100>。如何检查矩阵中的所有值是否都是 NaN?
基本上我想检查矩阵是否只包含带有if-statement.的NaN值
【问题讨论】:
我有一个矩阵<1x100>。如何检查矩阵中的所有值是否都是 NaN?
基本上我想检查矩阵是否只包含带有if-statement.的NaN值
【问题讨论】:
解决方案
使用以下语法:
res = ~any(~isnan(X(:)));
如果 res==true 表示矩阵只包含 nan 值。
示例
X = nan(3,3)
~any(~isnan(X(:)))
X(1,2) = 0;
~any(~isnan(X(:)))
结果
ans = 1
ans = 0
【讨论】:
NaN 和false,它真的会给你true 吗?
让我们考虑 x 它是 nan 的向量
x = nan(1,100);
要检查所有值是否都是 nan ,您可以这样做
if(~isempty(find(isnan(x))))
【讨论】:
x=[1 2 3] 。会发生什么?
if 必须有 end)。此外,if 的参数始终为 true,除非您重新定义 nan 函数以返回空数组。
x = [1 2 3] ,会发生什么