Assigning NaN to certain values

12 visualizzazioni (ultimi 30 giorni)
IMC
IMC il 1 Mar 2021
Commentato: IMC il 2 Mar 2021
Hello,
I am trying to read nc file and it contains values (-177.6600, -177.6500, -177.6300, -177.5900, -177.5700). I want to assign NaN to all these values (there is a huge number of these values).I tried the following code but it didn't remove the maximum value i.e., -177.5700.
Temp = ncread('G\01.06.17\NC_H08_20170601_0500_L2CLP010_FLDK.02401_02401.nc', 'Temperature');
Temp(Temp<=-177.5700)= NaN;
Kindly help.
Thank you.
  4 Commenti
KSSV
KSSV il 1 Mar 2021
Try:
tol = 10^-3 ;
Temp(Temp<=-(177.5700+tol))= NaN;
IMC
IMC il 1 Mar 2021
Unfortunately, It didn't work.

Accedi per commentare.

Risposta accettata

David Hill
David Hill il 1 Mar 2021
You might try rounding to 4 decimal places first
Temp=round(Temp,4);
Temp(ismember(Temp,[-177.6600, -177.6500, -177.6300, -177.5900, -177.5700]))=nan;
  1 Commento
IMC
IMC il 1 Mar 2021
Thanks David!. It tried using your lines of code and it worked.

Accedi per commentare.

Più risposte (1)

Allen
Allen il 1 Mar 2021
A slightly more simple approach:
Temp(round(Temp,4)<=-177.57)= NaN;

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by