how to value nan number in a vector? and how to do the same calc in a 2d matrix?

1 Ansicht (letzte 30 Tage)
--I have a vactor where some values are NaN.The results are on the following plot(in the red box the nan) :
--I was wondering if there is a way to assume the values so it will be something like this:
---Also how to do the same procedure if some values of 2d matrix is NaN? Thanks in advance.

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 2 Okt. 2014
Bearbeitet: Andrei Bobrov am 2 Okt. 2014
Let X your array with NaN's
ii = ~isnan(X);
i0 = reshape(1:numel(X),size(X));
Xout = interp1(i0(ii),X(ii),i0);

Weitere Antworten (1)

Iain
Iain am 2 Okt. 2014
You've got an x & y vector, so this would remove the NaNs:
nans = isnan(Y) || isnan(X);
Y(nans) = [];
X(nans) = [];
You'll need to interpolate if you want the X & Y for all the values of your original X.

Kategorien

Mehr zu Just for fun finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by