R: Interpolation methods

RFinterpolate {RandomFields} | R Documentation

## Interpolation methods

### Description

The function allows for different methods of interpolation. Currently only various kinds of kriging are installed.

### Usage

    RFinterpolate(model, x, y = NULL, z = NULL, T = NULL, grid=NULL,
                  distances, dim, data, given=NULL, err.model,
                     ignore.trend = FALSE, ...)

### Arguments

`model` | string; covariance model, see `RMmodel`, or type `RFgetModelNames(type="variogram")` to get all options.
`x` | (n x d) matrix or vector of x coordinates, or object of class `GridTopology` or `raster`; coordinates of n points to be kriged. For more options see RFsimulateAdvanced.
`y` | optional vector of y coordinates
`z` | optional vector of z coordinates
`T` | optional vector of time coordinates, `T` must always be an equidistant vector. Instead of `T=seq(from=From, by=By, len=Len)` one may also write `T=c(From, By, Len)`.
`grid` | logical; determines whether the vectors `x`, `y`, and `z` should be interpreted as a grid definition; `RandomFields` can find itself the correct value in nearly all cases. See also RFsimulateAdvanced.
`distances` | another alternative to pass the (relative) coordinates, see RFsimulateAdvanced.
`dim` | Only used if `distances` are given.
`data` | Matrix, data.frame or object of class `RFsp`; coordinates and response values of measurements; `given` is not given and `data` is a matrix or `data` is a data.frame, the first columns are interpreted as coordinate vectors, and the last column(s) as (multiple) measurement(s) of the field which are kriged separately; if the argument `x` is missing, `data` may contain `NA`s, which are then replaced by the kriged values (imputing); for details on matching of variable names see RFsimulateAdvanced; if of class `RFsp`
`given` | optional, matrix or list. If `given` matrix then the coordinates can be given separately, namely by `given` where, in each row, a single location is given. If `given` is a list, it may consist of `x`, `y`, `z`, `T`, `grid`. If `given` is provided, `data` must be a matrix or an array containing the data only.
`err.model` | For conditional simulation and random imputing only. Usually `err.model=RMnugget(var=var)`, or not given at all (error-free measurements).
`ignore.trend` | logical. If `TRUE` only the covariance model of the given model is considered, without the trend part.
`...` | for options, etc.

### Details

In case of intrinsic cokriging (intrinsic kriging for a multivariate random fields) the pseudo-cross-variogram is used (cf. Ver Hoef and Cressie, 1991).

### Value

The value depends on the additional argument `variance.return`, see `RFoptions`.

If `variance.return=FALSE` (default), `Kriging` returns a vector or matrix of kriged values corresponding to the specification of `x`, `y`, `z`, and `grid`, and `data`.

`data`: a vector or matrix with one column
* `grid=FALSE`. A vector of simulated values is returned (independent of the dimension of the random field)
* `grid=TRUE`. An array of the dimension of the random field is returned (according to the specification of `x`, `y`, and `z`).

`data`: a matrix with at least two columns
* `grid=FALSE`. A matrix with the `ncol(data)` columns is returned.
* `grid=TRUE`. An array of dimension d+1, where d is the dimension of the random field, is returned (according to the specification of `x`, `y`, and `z`). The last dimension contains the realisations.

If `variance.return=TRUE`, a list of two elements, `estim` and `var`, i.e. the kriged field and the kriging variances, is returned. The format of `estim` is the same as described above. The format of `var` is accordingly.

### Note

Important options are

- `method` (overwriting the automatically detected variant of kriging)

- `return_variance` (returning also the kriging variance)

- `locmaxm` (maximum number of conditional values before neighbourhood kriging is performed)

- `fillall` imputing estimates location by default

- `varnames` and `coordnames` in case `data.frame`s are used to tell which column contains the data and the coordinates, respectively.

### Author(s)

Martin Schlather, schlather@math.uni-mannheim.de http://ms.math.uni-mannheim.de/de/publications/software

Marco Oesting, oesting@math.uni-mannheim.de

#### Author(s) of the code:

Martin Schlather, schlather@math.uni-mannheim.de http://ms.math.uni-mannheim.de/de/publications/software

Alexander Malinowski, malinowski@math.uni-mannheim.de

Marco Oesting, oesting@math.uni-mannheim.de

### References

Chiles, J.-P. and Delfiner, P. (1999) Geostatistics. Modeling Spatial Uncertainty. New York: Wiley.

Cressie, N.A.C. (1993) Statistics for Spatial Data. New York: Wiley.

Goovaerts, P. (1997) Geostatistics for Natural Resources Evaluation. New York: Oxford University Press.

Ver Hoef, J.M. and Cressie, N.A.C. (1993) Multivariate Spatial Prediction. Mathematical Geology 25(2), 219-240.

Wackernagel, H. (1998) Multivariate Geostatistics. Berlin: Springer, 2nd edition.

### See Also

`RMmodel`, `RFempiricalvariogram`, `RandomFields`,

### Examples

    RFoptions(seed=0) ## *ANY* simulation will have the random seed 0; set
    ##                   RFoptions(seed=NA) to make them all random again

    ## Preparation of graphics
    dev.new(height=7, width=16)

    ## creating random variables first
    ## here, a grid is chosen, but does not matter
    p <- 3:8
    points <- as.matrix(expand.grid(p,p))
    model <- RMexp() + RMtrend(mean=1)
    data <- RFsimulate(model, x=points)
    plot(data)
    x <- seq(0, 9, 0.25)

    ## Simple kriging with the exponential covariance model
    model <- RMexp()
    z <- RFinterpolate(model, x=x, y=x, data=data)
    plot(z, data)

    ## Simple kriging with mean=4 and scaled covariance
    model <- RMexp(scale=2) + RMtrend(mean=4)
    z <- RFinterpolate(model, x=x, y=x, data=data)
    plot(z, data)

    ## Ordinary kriging
    model <- RMexp() + RMtrend(mean=NA)
    z <- RFinterpolate(model, x=x, y=x, data=data)
    plot(z, data)

    close.screen(all = TRUE)

[Package RandomFields version 3.1.50 Index]