krige.conv: Spatial Prediction - Conventional Kriging

krige.convR Documentation

Spatial Prediction – Conventional Kriging

Description

This function performs spatial prediction for fixed covariance parameters using global neighbourhood.

Options available implement the following types of kriging: SK (simple kriging), OK (ordinary kriging), KTE (external trend kriging) and UK (universal kriging).

Usage

krige.conv(geodata, coords=geodata$coords, data=geodata$data,
           locations, borders, krige, output)

krige.control(type.krige = "ok", trend.d = "cte", trend.l = "cte",
            obj.model = NULL, beta, cov.model, cov.pars, kappa,
            nugget, micro.scale = 0, dist.epsilon = 1e-10, 
            aniso.pars, lambda)

Arguments

geodata

a list containing elements coords and data as described next. Typically an object of the class "geodata" - a geoR data-set. If not provided the arguments coords and data must be provided instead.

coords

an n \times 2 matrix or data-frame with the 2-D coordinates of the n data locations. By default it takes the component coords of the argument geodata, if provided.

data

a vector with n data values. By default it takes the component data of the argument geodata, if provided.

locations

an N \times 2 matrix or data-frame with the 2-D coordinates of the N prediction locations, or a list for which the first two components are used. Input is internally checked by the function check.locations.

borders

optional. By default reads the element borders from the geodata object, if present. Setting to NULL prevents this behavior. If a two column matrix defining a polygon is provided the prediction is performed only at locations inside this polygon.

krige

a list defining the model components and the type of kriging. It can take an output to a call to krige.control or a list with elements as for the arguments in krige.control. Default values are assumed for arguments or list elements not provided. See arguments for ‘krige.control’.

output

a list specifying output options. It can take an output to a call to output.control or a list with elements as for the arguments in output.control. Default values are assumed for arguments not provided. See documentation for output.control for further details.

type.krige

type of kriging to be performed. Options are "SK", "OK" corresponding to simple or ordinary kriging. Kriging with external trend and universal kriging can be defined setting type.krige = "OK" and specifying the trend model using the arguments trend.d and trend.l.

trend.d

specifies the trend (covariate) values at the data locations. See documentation of trend.spatial for further details. Defaults to "cte".

trend.l

specifies the trend (covariate) values at prediction locations. It must be of the same type as for trend.d. Only used if prediction locations are provided in the argument locations.

obj.model

a list with the model parameters. Typically an output of likfit or variofit.

beta

numerical value of the mean (vector) parameter. Only used if type.krige="SK".

cov.model

string indicating the name of the model for the correlation function. Further details can be found in the documentation of the function cov.spatial.

cov.pars

a 2 elements vector with values of the covariance parameters \sigma^2 (partial sill) and \phi (range parameter), respectively.

kappa

additional smoothness parameter required by the following correlation functions: "matern", "powered.exponential", "cauchy" and "gneiting.matern".

nugget

the value of the nugget variance parameter \tau^2. Defaults to zero.

micro.scale

micro-scale variance. If different from zero, the nugget variance is divided into 2 terms: micro-scale variance and measurement error. This affect the precision of the predictions. Often in practice, these two variance components are indistinguishable but the distinction can be made here if justifiable. See the section DETAILS in the documentation of output.control.

dist.epsilon

a numeric value. Locations which are separated by a distance less than this value are considered co-located.

aniso.pars

parameters for geometric anisotropy correction. If aniso.pars = FALSE no correction is made, otherwise a two elements vector with values for the anisotropy parameters must be provided. Anisotropy correction consists of a transformation of the data and prediction coordinates performed by the function coords.aniso.

lambda

numeric value of the Box-Cox transformation parameter. The value \lambda = 1 corresponds to no transformation and \lambda = 0 corresponds to the log-transformation. Prediction results are back-transformed and returned is the same scale as for the original data.

Details

According to the arguments provided, one of the following different types of kriging: SK, OK, UK or KTE is performed. Defaults correspond to ordinary kriging.

Value

An object of the class kriging. The attribute prediction.locations containing the name of the object with the coordinates of the prediction locations (argument locations) is assigned to the object. Returns a list with the following components:

predict

a vector with predicted values.

krige.var

a vector with predicted variances.

beta.est

estimates of the \beta, parameter implicit in kriging procedure. Not included if type.krige = "SK".

simulations

an ni \times n.sim matrix where ni is the number of prediction locations. Each column corresponds to a conditional simulation of the predictive distribution. Only returned if n.sim > 0.

message

messages about the type of prediction performed.

call

the function call.

Other results can be included depending on the options passed to output.control.

Author(s)

Paulo J. Ribeiro Jr. paulojus@leg.ufpr.br,
Peter J. Diggle p.diggle@lancaster.ac.uk.

References

Further information on the package geoR can be found at:
http://www.leg.ufpr.br/geoR/.

See Also

output.control sets output options, image.kriging and persp.kriging for graphical output of the results, krige.bayes for Bayesian prediction and ksline for a different implementation of kriging allowing for moving neighborhood. For model fitting see likfit or variofit.

Examples

## Not run: 
# Defining a prediction grid
loci <- expand.grid(seq(0,1,l=21), seq(0,1,l=21))
# predicting by ordinary kriging
kc <- krige.conv(s100, loc=loci,
                 krige=krige.control(cov.pars=c(1, .25)))
# mapping point estimates and variances
par.ori <- par(no.readonly = TRUE)
par(mfrow=c(1,2), mar=c(3.5,3.5,1,0), mgp=c(1.5,.5,0))
image(kc, main="kriging estimates")
image(kc, val=sqrt(kc$krige.var), main="kriging std. errors")
# Now setting the output to simulate from the predictive
# (obtaining conditional simulations),
# and to compute quantile and probability estimators
s.out <- output.control(n.predictive = 1000, quant=0.9, thres=2)
set.seed(123)
kc <- krige.conv(s100, loc = loci,
         krige = krige.control(cov.pars = c(1,.25)),
         output = s.out)
par(mfrow=c(2,2))
image(kc, val=kc$simul[,1], main="a cond. simul.")
image(kc, val=kc$simul[,1], main="another cond. simul.")
image(kc, val=(1 - kc$prob), main="Map of P(Y > 2)")
image(kc, val=kc$quant, main="Map of y s.t. P(Y < y) = 0.9")
par(par.ori)

## End(Not run)

geoR documentation built on May 29, 2024, 1:36 a.m.

Related to krige.conv in geoR...