フィルターのクリア

Interpolation 9 data. help!

1 回表示 (過去 30 日間)
Jeong_evolution
Jeong_evolution 2016 年 11 月 14 日
回答済み: Gavriel Aminov 2017 年 4 月 5 日
Data is figure.
I want to interpolation "NaN" data.
Please help me.
  1 件のコメント
Jan
Jan 2016 年 11 月 14 日
Columnwise, rowwise, in 2D, linear, cubic or how else?

サインインしてコメントする。

採用された回答

Gavriel Aminov
Gavriel Aminov 2017 年 3 月 23 日
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)))'

その他の回答 (1 件)

Gavriel Aminov
Gavriel Aminov 2017 年 4 月 5 日
https://www.mathworks.com/mat Interpolates (& extrapolates) NaN elements in a 2d array. (nan, inpainting, replace) labcentral/fileexchange/4551-inpaint-nans

カテゴリ

Help Center および File ExchangeInterpolation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by