How do I replace -1.0000e+30 with NaN?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Simbarashe Chidzambwa
el 9 de Nov. de 2022
Comentada: Steven Lord
el 10 de Nov. de 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 comentarios
Respuesta aceptada
KSSV
el 9 de Nov. de 2022
Let T be your array.
tol = -10^10 ; % fix this to satisfied value
T(T<tol) = NaN ;
3 comentarios
Más respuestas (1)
Steven Lord
el 9 de Nov. de 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)
Ver también
Categorías
Más información sobre Data Preprocessing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!