Replacing a value with nan

조회 수: 1 (최근 30일)
Elaheh
Elaheh 2018년 4월 18일
답변: Dennis 2018년 4월 18일
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

채택된 답변

Star Strider
Star Strider 2018년 4월 18일

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

추가 답변 (1개)

Dennis
Dennis 2018년 4월 18일

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

But you can use isnan instead.

카테고리

Help CenterFile Exchange에서 NaNs에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by