a(a==NaN) does not find NaN's in matrix. What to do?
Show older comments
I have
a=1 NaN 2 6
I want to change the NaN to 0 but
a(a==NaN)=0
does not work and gives me
a =
1.00 NaN 2.00 6.00
What did i do wrong?
Accepted Answer
More Answers (1)
Thomas
on 29 May 2012
Sharon, you are unable to replace the NaN because
NaN ~= NaN (in matlab NaN's are unequal) you can check this by
isequal(NaN,NaN)
ans =
0
to replace NaN's use the isnan function
doc isnan
For your example you need
a(isnan(a))=0
a =
1.00 0 2.00 6.00
Categories
Find more on NaNs in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!