How do I replace -1.0000e+30 with NaN?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Simbarashe Chidzambwa
il 9 Nov 2022
Commentato: Steven Lord
il 10 Nov 2022
I want to replace -1.0000e+30 in an array of SST and used the following but its not working why?:
data=netcdf.open('HadISST_sst1.nc','NC_NOWRITE')
time=netcdf.getVar(data,0);
time_bnds=netcdf.getVar(data,1);
lat=netcdf.getVar(data,2);
lon=netcdf.getVar(data,3);
sst=netcdf.getVar(data,4);
sst(sst==-1.0000*1e+30)=NaN;
0 Commenti
Risposta accettata
KSSV
il 9 Nov 2022
Let T be your array.
tol = -10^10 ; % fix this to satisfied value
T(T<tol) = NaN ;
3 Commenti
Più risposte (1)
Steven Lord
il 9 Nov 2022
Since I'm guessing -1e30 is an outlier in your data you could use filloutliers. I'll use a slightly smaller outlier value for this example because it makes y display more nicely.
y = 1:10;
y(7) = 100
y2 = filloutliers(y, NaN)
2 Commenti
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!