I'm looking for guidance on the choice of interpolation method. The data I want to interpolate is air quality data, but not from stations - it is a kind of a model in a 1x1 km grid (where each point represents the average value of the respective cell) and I want to interpolate it to 50x50 m (in the fine grid, each point should represent the value at exactly that location). I tried to do it in R using bilinear (fields::interp.surface) and bicubic (akima::bicubic) methods and I've also considered kriging - but I have a feeling that that would not be suitable for regridding. There are some (not so significant) differences in results, but I would really like to know which approach is the most correct. Maybe even another method? There is just one condition, that I have to be able to do it in R (just as the rest of my code is).

  • 2
    Since your data is a regular lattice i would recommend coercion to a raster and then using a bilinear or cubic resampling. Kriging on a regular lattice is not advisable. Commented Nov 24, 2017 at 16:08

1 Answer 1


Besides reviewing the literature and figuring out which methods have been typically applied successfully to given data, I think the only way to know whether an interpolation method is the most suitable for a given data set is verify the model in the field... that is check modeled points at unsampled locations against actual field measurements. The number and distribution of measured points and the choice of parameters when applying a method all have an impact on the results. Below is a graphic from one of the classes at NCSU:

enter image description here

The essential message is, there is no unique solution to interpolating between points in a data set. Each line in the graphic represents either a different interpolation method or application of different parameters in same method. One can target some specific characteristics of the solution to the function such as smoothness, but whether the solution is more "correct" is a judgement call.

In your case it sounds you would like to take a model and refine it...meaning fill in the model (interpolate additional points). I don't think you necessarily get a more correct result. You will get more points in between any two measured points(measured to produce original model), but really the new points will sit along the same line as in the courser grid unless you change the parameters and in that case you are getting different solutions of the function but not necessarily more representative of the real world.

But I think if you are able to figure out the method and parameters used to get the initial model, you should be able to reproduce(re-grid) similar results on a finer grid. i.e get similar values at locations in the 50 x 50 compared to the 1km x 1km.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.