Index of NaN Values

90 views (last 30 days)
Tiago Dias
Tiago Dias on 23 Jul 2018
Edited: Walter Roberson on 23 Jul 2018
Hello,
My objective is to know the index of NaN values per column.
y = [1,2;NaN,4;5,NaN;7,8;9,NaN]
idx = isnan(y)
for j = 1:m
for i = 1:n
if idx(i,j) == 1
idx_all(i,j) = i
end
end
end
I get a result of
idx_all = 0 0
2 0
0 3
0 0
0 5
I would like the result to be something like
idx = [2 3
0 5]
Because the 1st column has just one NaN on row 2, and the 2nd column has NaN for row 3 and 5.
Thanks.
  2 Comments
Tiago Dias
Tiago Dias on 23 Jul 2018
yeah, but i would like to eliminate the zeros as well.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 23 Jul 2018
A loop is easiest.
nc = size(y,2);
idx = zeros(0, nc);
for C = 1 : nc
nidx = find(isnan(y(:,C)));
idx(1:length(nidx), C) = nidx;
end
  1 Comment
Tiago Dias
Tiago Dias on 23 Jul 2018
Thanks !! :)

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!