Replacing a value with nan

1 vue (au cours des 30 derniers jours)
Elaheh
Elaheh le 18 Avr 2018
Réponse apportée : Dennis le 18 Avr 2018
Hello all. I want to replace a value that I have in accuracyC with nan if its counterpart value is nan in RTc. RTc and accuracyC are two matrices. I have written this loop but it does not work. I appreciate your help.
h=0;
for i=1:size(accuracyC,1)
for j=1:size(accuracyC,2)
if RTc(i,j)==nan
accuracyC(i,j)=NaN;
h=h+1;
end
end
end

Réponse acceptée

Star Strider
Star Strider le 18 Avr 2018

Try this:

RTc = [1 2 3 NaN; 4 5 6 7; NaN 8 9 10]                      % Create Matrix
AccuracyC = randi(9, size(RTc))                             % Create Matrix
AccuracyC(isnan(RTc)) = NaN                                 % Desired Result
RTc =
       1     2     3   NaN
       4     5     6     7
     NaN     8     9    10
AccuracyC =
       7     1     6     6
       8     3     9     3
       1     8     2     1
AccuracyC =
       7     1     6   NaN
       8     3     9     3
     NaN     8     2     1

Plus de réponses (1)

Dennis
Dennis le 18 Avr 2018

I read about this lately, NaN never equals NaN (some IEEE stuff).

But you can use isnan instead.

Catégories

En savoir plus sur NaNs dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by