Filling in missing points
9 ビュー (過去 30 日間)
表示 古いコメント
Hi, all. I have a quesion about filling missing points.
I need to fill in the missing points according to these rules:
- If there’s only one missing point, with valid data present on both sides of that point, the missing point shall be assigned the average of the two known data-points either side of it.
- If there are multiple, consecutive data-points missing, the closest known data point will be assigned to those missing values.
I have finished the first rule, but I don't know how to deal with second rule.

0 件のコメント
回答 (1 件)
Andrei Bobrov
2020 年 3 月 30 日
編集済み: Andrei Bobrov
2020 年 3 月 30 日
In R2016b:
T = readtable('weather_laverton.xlsx','Sheet',1);
TT = table2timetable(T);
TTout = fillmissing(TT,'linear');
Add
T = readtable('weather_laverton.xlsx','Sheet',1);
TT = table2timetable(T);
A = varfun(@f1,TT);
function out = f1(x)
b1 = fillmissing(x,'linear');
b2 = fillmissing(x,'nearest');
d = [0;diff(bwdist(~isnan(x)),2);0]==-2;
out = b2;
out(d) = b1(d);
end
参考
カテゴリ
Help Center および File Exchange で Data Import from MATLAB についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!