Data is figure.
I want to interpolation "NaN" data.
Please help me.

1 Kommentar

Jan
Jan am 14 Nov. 2016
Columnwise, rowwise, in 2D, linear, cubic or how else?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Gavriel Aminov
Gavriel Aminov am 23 Mär. 2017

0 Stimmen

Please try the next code. The sample matrix M is simulated as random values, not as well-behaving function, therefore the ERROR is big. For smooth 2D function the ERROR should be reasonable. Please examine it.
m=5;
n=10;
M0=round(rand(m,n)*10)
M=M0;
M(M<3)=nan
[J, I]=meshgrid(1:n, 1:m);
all_inds=sub2ind([m,n], I, J);
good_inds=find(~isnan(M(all_inds)));
[I0, J0]=ind2sub([m,n], good_inds);
MM=round(griddata(I0, J0, M(good_inds), I, J, 'linear'))
ERROR=(MM(isnan(M))-M0(isnan(M)))'

Weitere Antworten (1)

Kategorien

Mehr zu Interpolation finden Sie in Hilfe-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