In this wiki article and elsewhere in educational materials/papers, I have seen people refer to the idea that secondary data, if used (appropriately) in cokriging or collocated cokriging, is usually abundant and more cheaply acquired compared to the primary data.

I would like to know, does this necessarily need to be the case? In other words, can secondary data be as plentiful as, or less abundant than the primary data (in the case of cokriging, in general); And/or can it not always follow the regular pattern with regard to overlap of its locations with the primary data (in the case of collocated cokriging)?

What are some ways/methods (if any) that estimation under such scenario may be made possible on practice? If so, what additional assumptions and drawbacks are there? Please feel free to suggest practical tutorials in R/Python or some articles that are not extremely technical.

  • $\begingroup$ Why didn't they call it co-kriging? Or are the potential associations just me? $\endgroup$ Sep 1, 2020 at 8:35

1 Answer 1


Co-kriging is often used, as you mentioned, when we have a 'secondary' source of data. The main idea is that the abundant data is a good guess of the primary data, but they're not the same so you should perform a 'correction' using the primary data. It is almost always the case that the secondary data is much easier to collect. We will call the abundant (secondary) data $D_A = \{y_a, x_a\}$ and the main data (primary) $D_p = \{y_p, x_p\}$. Usually $y$ is a scalar observation and $x$ will be a $2d$ or $3d$ vector of position data. However in the computer experiments literature, $x$ and $y$ can be of any dimension. My background is in computer experiments/emulators so my references will be from that literature rather than geo/spatial statistics, but the idea is almost identical.

  • This could be a proxy variable (e.g. two mineral contents in a type of rock could be correlated, but it might be easier/cheaper to extract one type than the other).
  • The other case is 'fidelity' or 'coarseness'. For example, I might have lots of cheap weather sensors over an area of interest that are okay at measuring temperature, but I then might have a few very accurate sensors spread out over the same area that produce very accurate temperature data. I would use the cheap weather sensors as a 'best guess' where there isn't an accurate sensor placed.

Now for the case of whether you need to have them in the same place. First assume that most of the $x_p$ are in $x_a$ Using the temperature example, If I knew I was going to perform co-kriging, then it makes sense to place the sensors next to each other. It makes the co-kriging maths fairly straighforward. I am aware of ways to get around this; you can impose a missing data mechanism on the $x_p$ that are not in $x_a$. In a Bayesian framework this is relatively straightforward, we just slap a prior on the relevant $x_a$ and away we go. However, this is quite computationally expensive so I personally would avoid this unless it was very important.

Another approach to this would be to not use co-kriging and use a more general multivariate Gaussian process (MGP). I'm not overly familiar with their use in Kriging but I've seen a fair few multivariate emulators. My impression is that this is best used when $x_a = x_p$ (correct me if wrong!).

Another approach you can take is to build a Kriging model for $y_a, x_a$, and then use the predictions from this, $\hat{y}_a$ Kriging model as an input to the Kriging model for $y_p, x_p$. That is, $\hat{y}_p = f(x_p, \hat{y}_a)$. This might be a better approach when there is little 'agreement' between $x_a$ and $x_p$. I.e. your measurements are almost always at different places.

Finally, software implementation. I have found that the gstat package for R will perform co-Kriging for you. There is also a very nice tutorial which will walk you through how to perform co-Kriging in R. The tutorial has a lot of detailed, and relatively non-technical explanations of when to use co-Kriging. It could be very useful for you.

  • $\begingroup$ Thank you! In cases where we have fewer or positionally mismatched secondary data, I was thinking along the similar lines to your last workaround, that is to interpolate the secondary data first and then use it for collocated co-kriging with the primary data. However, to clarify, because I don't know the literature very well, do you know if this is a generally accepted and scientifically defensible practice, since this would require additional assumption on errors of $\hat{y_{a}}$? $\endgroup$
    – Denys D.
    Sep 1, 2020 at 18:17
  • 1
    $\begingroup$ @Denys D. The last method is certainly the simplest. As with any kriging/gp regression the errors are Gaussian but not always independent. In all honesty I don't know much about the technicallities of the final method, however I have seen it being used in a few papers. Its not a stupid idea and as long as the predictions of $y_a$ are good then it wont be a huge deal. Could warrant a new question on CV! $\endgroup$
    – jcken
    Sep 1, 2020 at 19:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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