飛び飛びの値を(線形)補間する方法(matlab)
ちょっとしたメモ(自分用)
時系列データを扱っていると飛び飛びに欠損値が存在するデータに出くわす場面が多い。
特に大気とか海洋の観測データだと機材の不調で欠損値が生じる場合がある。
通常interp1を使えば良いのだが、複数の時系列データセットかつ、欠損期間がバラバラだとうんざりする。
fillmissingを使えば一発で瞬時に補完できる。
つい最近まで知らなかったのでメモする。
以下、公式から引用
A = [NaN NaN 5 3 NaN 5 7 NaN 9 NaN; 8 9 NaN 1 4 5 NaN 5 NaN 5; NaN 4 9 8 7 2 4 1 1 NaN]
F = fillmissing(A,'linear',2,'EndValues','nearest')
F = 5 5 5 3 4 5 7 8 9 9 8 9 5 1 4 5 5 5 5 5 4 4 9 8 7 2 4 1 1 1