How to value value NaN in a 2d matrix?

3 ビュー (過去 30 日間)
Dimitrios
Dimitrios 2014 年 10 月 2 日
回答済み: Andrei Bobrov 2014 年 10 月 2 日
I have a 2d matrix with some NaN. how to value them? I give some figure to be more understandable:
It can be seen that there 2-3 values equal to NaN. I was wondering how to interpolate them with the rest values.Thanks in advance.

採用された回答

Andrei Bobrov
Andrei Bobrov 2014 年 10 月 2 日
please use scatteredInterpolant, example:
a = randi([6 10],30,20);
a(randperm(numel(a),20)) = nan; % a - your 2d array with nan's
[r,c] = ndgrid(1:size(a,1),1:size(a,2));
l0 = ~isnan(a);
F = scatteredInterpolant(r(l0),c(l0),a(l0))
surf(a)
a2 = F(r,c);
figure,surf(a2)

その他の回答 (1 件)

dpb
dpb 2014 年 10 月 2 日

カテゴリ

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