Learn R Programming

intamap (version 1.5-7)

estimateParameters: Automatic estimation of correlation structure parameters

Description

Function to estimate correlation structure parameters. The actual parameters depend on the method used.

Usage

# S3 method for automap
estimateParameters(object, ... )
# S3 method for copula
estimateParameters(object, ... )
# S3 method for default
estimateParameters(object, ...)
# S3 method for idw
estimateParameters(object, ... )
# S3 method for linearVariogram
estimateParameters(object, ...)

# S3 method for transGaussian
estimateParameters(object, ... )
# S3 method for yamamoto
estimateParameters(object, ... )

Value

a list object similar to object, but extended with correlation parameters.

Arguments

object

an intamap object of the type described in intamap-package

...

other arguments that will be passed to the requested interpolation method. See the individual methods for more information. Some parameters that are particular for some methods:

idpRange

range of idp (inverse distance weighting power) values over which to optimize mse (idw-method)

nfolds

number of folds in n-fold cross validation (idw-method)

lambda

lambda parameter for boxcox-transformation (transGaussian method)

significant

logical; if TRUE only transform if any of the four tests described under interpolate are TRUE (transGaussian method)

Author

Jon Olav Skoien

Details

The function estimateParameters is a wrapper around different methods for estimating correlation parameters to be used for the spatial prediction method spatialPredict. Below are some details about and/or links to the different methods currently implemented in the intamap-package.

automap

It is possible but not necessary to estimate variogram parameters for this method. If estimateParameters is called with an object of class automap, autofitVariogram will be called. If object already includes a variogram model when spatialPredict is called, krige in the gstat-package will be called directly. The user can submit an argument model with the model(s) to be fitted.

copula

finding the best copula parameters using copulaEstimation

default

a default method is not really implemented, this function is only created to give a sensible error message if the function is called with an object for which no method exist

idw

fits the best possible idw-power to the data set by brute force searching within the idpRange

linearVariogram

this function just returns the original data, no parameter fitting is necessary for linear variogram kriging

%\item{\code{psgp}}{finding the best variogram model using \code{\link[psgp]{learnParameters}} in the \emph{psgp} package}

transGaussian

Finding the best model parameters for transGaussian kriging (krigeTg). This means finding the best lambda for the boxcox-transformation and the fitted variogram parameters for the transformed variable. If significant = TRUE will lambda only be estimated if the data show some deviation from normality, i.e., that at least one of the tests described under interpolate is TRUE. Note that transGaussian kriging is only possible for data with strictly positive values.

yamamoto

a wrapper around estimateParameters.automap, only to assure that there is a method also for this class, difference to automap is more important in spatialPredict

It is also possible to add to the above methods with functionality from other packages, if wanted. You can also check which methods are available from other packages by calling


>methods(estimateParameters)

References

Pebesma, E., Cornford, D., Dubois, G., Heuvelink, G.B.M., Hristopulos, D., Pilz, J., Stohlker, U., Morin, G., Skoien, J.O. INTAMAP: The design and implementation f an interoperable automated interpolation Web Service. Computers and Geosciences 37 (3), 2011.

See Also

createIntamapObject, spatialPredict, intamap-package

Examples

Run this code
set.seed(13131)

# set up data:
data(meuse)
coordinates(meuse) = ~x+y
meuse$value = log(meuse$zinc)
data(meuse.grid)
gridded(meuse.grid) = ~x+y
proj4string(meuse) = CRS("+init=epsg:28992")
proj4string(meuse.grid) = CRS("+init=epsg:28992")

# set up intamap object:
idwObject = createIntamapObject(
	observations = meuse,
	formulaString=as.formula(zinc~1),
  predictionLocations = meuse.grid,
	class = "idw"
)

# run test:
checkSetup(idwObject)

# do interpolation steps:
idwObject = estimateParameters(idwObject, idpRange = seq(0.25,2.75,.25),
                               nfold=3) # faster
idwObject$inverseDistancePower

Run the code above in your browser using DataLab