substituting value in matrix does not work for some reason
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Bogdan
le 18 Nov 2014
Modifié(e) : Kelly Kearney
le 18 Nov 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 commentaires
Réponse acceptée
Kelly Kearney
le 18 Nov 2014
Modifié(e) : Kelly Kearney
le 18 Nov 2014
You can't use == with NaNs:
>> NaN == NaN
ans =
0
Use isnan instead:
B(isnan(A)) = NaN;
0 commentaires
Plus de réponses (1)
Kevin Claytor
le 18 Nov 2014
Logical indexing makes this much easier;
B(A==NaN) = NaN;
0 commentaires
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!