【发布时间】:2016-08-22 19:58:37
【问题描述】:
我有一个 121x601 matrix 和一些 NaN 值。
我无法理解以下不一致的原因:
>> size(A,1)*size(A,2)
ans =
72721
>> numel(~isnan(A))
ans =
72721
>> numel(isnan(A))
ans =
72721
有人可以指点一下吗?
【问题讨论】:
我有一个 121x601 matrix 和一些 NaN 值。
我无法理解以下不一致的原因:
>> size(A,1)*size(A,2)
ans =
72721
>> numel(~isnan(A))
ans =
72721
>> numel(isnan(A))
ans =
72721
有人可以指点一下吗?
【问题讨论】:
【讨论】:
numel(A(~isnan(A))) 就是我要找的!谢谢!
sum(~isnan(A))。
nnz(~isnan(A)) 也可以。
sum(~isnan(A)) 将返回一个列向量,其中包含每列中非 NaN 元素的数量。 sum(A) 默认计算每一列的总和。执行此操作的正确方法是 sum(sum(~isnan(A)));、sum(~isnan(A(:)));` 或 craigim 建议的 nnz(~isnan(A))。我认为最后一个是最好的......