Operator to fill in missing values using interpolation
Added by Andreas Hilboll over 11 years ago
Hi,
sorry if such an operator exists and I was just too blind to find it ...
Given a dataset which contains missing values, it would be nice to have an operator which fills in using these missing data points using some interpolation of the surrounding points.
Is there anything like this in CDO? If not, is it planned to implement such a feature? Or maybe you know of an alternative way to achieve this?
Cheers, Andreas.
Replies (4)
RE: Operator to fill in missing values using interpolation - Added by Uwe Schulzweida over 11 years ago
Hi Andreas,
Try the undocumented CDO operator fillmiss. This operator fills missing values by a bilinear interpolation of the four surrounding points. The status of this operator is experimental and it works only on rectilinear grids.
Cheers,
Uwe
RE: Operator to fill in missing values using interpolation - Added by Andreas Hilboll over 11 years ago
Uwe,
thanks a lot for this! For my use case, it works like a charm. Wow.
I should note, however, that extrapolation towards the poles doesn't seem to work properly. This is my grid:
gridtype = lonlat gridsize = 29040 xname = lon xlongname = longitude xunits = degrees_east yname = lat ylongname = latitude yunits = degrees_north xsize = 240 ysize = 121 xfirst = 0 xinc = 1.5 yfirst = -90 yinc = 1.5
All my values at 90N and 90S are nan. When using the fillmiss operator, the values from 88.5° are simply copied to 90°, leading to 240 different values for the pole, which at least physically doesn't make sense.
In my use case, it doesn't matter, but I just wanted to point you to this issue.
Cheers, Andreas.
RE: Operator to fill in missing values using interpolation - Added by Miles Sowden about 2 years ago
Just a comment, (as this is probably best fixed with setmisstonn),
the north issue is as a result of the boundary (north) being wrong. It may be best to set all boundaries to zero prior to using fillmiss.
RE: Operator to fill in missing values using interpolation - Added by Brendan DeTracey about 2 years ago
Another comment. Rectilinear lat-lon grids that include 90N/S (as a center point of a grid cell) are a very bad practice, although they are still commonly used.