how to change values within an array to NaN

23 visualizzazioni (ultimi 30 giorni)
loading xyz-data into Matlab and interpolate that scattered data like this:
load f56.dat
x=f56(:,1); y=f56(:,2); z=f56(:,3);
F=scatteredInterpolant(x,y,z);
[xn yn]=meshgrid(min(x):0.01:max(x),min(y):0.01:max(y));
zn=F(xy,yn);
gives me 1950 values in x and 4000 in y.
Because of a region of bad data I would like to set that region to NaN for further processing. How can I set 1280 <= x <= 1950 and 3025 <= y <= 4000 to NaN ?
Thanks a lot.

Risposta accettata

Matt J
Matt J il 18 Gen 2021
Modificato: Matt J il 18 Gen 2021
zn = F(xn,yn);
bad = (1280 <= xn & xn<=1950) & (3025 <= yn & yn <= 4000) ;
zn(bad)=nan;

Più risposte (0)

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Tag

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by