substituting value in matrix does not work for some reason
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Bogdan
el 18 de Nov. de 2014
Editada: Kelly Kearney
el 18 de Nov. de 2014
A = [6 9 NaN NaN 8 NaN]; B = [2 5 342 232 1 116];
sizeA = size(A);
for m = [1:1:size(2)];
if A(1,m) == NaN;
B(1,m) = NaN;
end;
end;
I was hoping B would become [2 5 NaN NaN 8 NaN], but it did not change. I would appreciate any help
0 comentarios
Respuesta aceptada
Kelly Kearney
el 18 de Nov. de 2014
Editada: Kelly Kearney
el 18 de Nov. de 2014
You can't use == with NaNs:
>> NaN == NaN
ans =
0
Use isnan instead:
B(isnan(A)) = NaN;
0 comentarios
Más respuestas (1)
Kevin Claytor
el 18 de Nov. de 2014
Logical indexing makes this much easier;
B(A==NaN) = NaN;
0 comentarios
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!