Interp2d with NaN values (2D-Interpolation)

10 views (last 30 days)
I have XI and YI variables as two row vectors. The sequences contain some missing values represented by NaN.
On the other hand, I have X,Y,Z are complete matrices (any nan)
I would like to perform interp2d method:
ZI = interp2(X,Y,Z,XI,YI)
ZI must be a vector with the length of XI,YI but the algorithm is not able to calculate the interpolation when data is missing.
What I want, is to deal with those missing data, rather than to make up some fake data that could screw up my analysis.
In other words, I want to obtain a ZI with NaN values at the same position of XI and YI.
how can I can do this in MATLAB? I am also open to other suggestions on how to deal with these missing values.

Accepted Answer

Jan
Jan on 18 Aug 2012
valid = ~isnan(XI) & ~isnan(YI);
ZI = nan(size(XI));
ZI(valid) = interp2(X, Y, Z, XI(valid), YI(valid));

More Answers (0)

Community Treasure Hunt

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

Start Hunting!