MATLAB: Index of NaN Values

index

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.

Best Answer

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