Find NaN elements in a matrix

743 views (last 30 days)
NS
NS on 12 Oct 2011
Commented: Whitney on 22 Nov 2021
Hi Guys,
How can I find the exact location of NaN elements in a matrix. I work with really large arrays (size 1500*200).
How can I find which row has a NaN value in a column matrix or vice versa.?
Thanks
N

Accepted Answer

Walter Roberson
Walter Roberson on 12 Oct 2011
[row, col] = find(isnan(YourMatrix));
  6 Comments
Ana Paulina García
Ana Paulina García on 5 Oct 2020
for me this actually creates a 1x0 variable named row and another one named col. None of the variables tells me the index :(
Whitney
Whitney on 22 Nov 2021
An empty result means that there are no NaNs in the martix

Sign in to comment.

More Answers (3)

Wayne King
Wayne King on 12 Oct 2011
One way:
X = ones(10,4);
X(3,4) = NaN;
indices = find(isnan(X) == 1);
[I,J] = ind2sub(size(X),indices);

bym
bym on 12 Oct 2011
isnan()
  1 Comment
NS
NS on 12 Oct 2011
This gives me just an array of 0 and 1. I need more precise info :(

Sign in to comment.


Elizabeth Drybrugh
Elizabeth Drybrugh on 3 May 2018
Edited: Elizabeth Drybrugh on 3 May 2018
Do this to get the sum
sum(isnan(x))
For other functions, it depends on what you actually need....

Tags

Community Treasure Hunt

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

Start Hunting!