sample.variogram: Computing (Robust) Sample Variograms of Spatial Data

Description Usage Arguments Details Value Author(s) References See Also Examples

Description

The function sample.variogram computes the sample empirical) variogram of a spatial variable by the method-of-moment and three robust estimators. Both omnidirectional and direction-dependent variograms can be computed, the latter for observation locations in s three-dimensionsal domain. There are summary and plot methods for summarizing and displaying sample variograms.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
sample.variogram(response, locations, lag.class.def, 
    xy.angle.def = c(0, 180), xz.angle.def = c(0, 180), max.lag = Inf, 
    estimator = c("qn", "mad", "matheron", "ch"), mean.angle = TRUE)
   
## S3 method for class 'sample.variogram'
summary(object, ...)

## S3 method for class 'sample.variogram'
plot(x, type = "p", add = FALSE, xlim = c(0, max(x[["lag.dist"]])),
    ylim = c(0, 1.1 * max(x[["gamma"]])), col, pch, cex = 0.8, 
    xlab = "lag distance", ylab = "semivariance", 
    annotate.npairs = FALSE, npairs.pos = 3, npairs.cex = 0.7, 
    legend = nlevels(x[["xy.angle"]]) > 1 || nlevels(x[["xz.angle"]]) > 1, 
    legend.pos = "topleft", ...)
   

Arguments

response

a numeric vector with the values of the response for which the sample variogram should be computed.

locations

a numeric matrix with the coordinates of the locations where the response was observed. May have an arbitrary number of columns for an omnidirectional variogram, but at most 3 columns if a directional variogram is computed.

lag.class.def

a numeric scalar defining a constant bin width for grouping the lag distances or a numeric vector with the upper bounds of a set of contiguous bins.

xy.angle.def

an numeric vector defining angular classes in the horizontal plane for computing directional variograms. xy.angle.def must contain an ascending sequence of azimuth angles in degrees from north (positive clockwise to south), see Details. Omnidirectional variograms are computed with the default c(0,180).

xz.angle.def

an numeric vector defining angular classes in the x-z-plane for computing directional variograms. xz.angle.def must contain an ascending sequence of angles in degrees from zenith (positive clockwise to nadir), see Details. Omnidirectional variograms are computed with the default c(0,180).

max.lag

positive numeric defining the largest lag distance for which semivariances should be computed (default no restriction).

estimator

character keyword defining the estimator for computing the sample variogram. Possible values are:

  • "qn": Genton's robust Qn-estimator (default, Genton, 1998),

  • "mad": Dowd's robust MAD-estimator (Dowd, 1984),

  • "matheron": non-robust method-of-moments estimator,

  • "ch": robust Cressie-Hawkins estimator (Cressie and Hawkins, 1980).

mean.angle

logical controlling whether the mean lag vector (per combination of lag distance and angular class) is computed from the mean angles of all the lag vectors falling into a given class (TRUE, default) or from the mid-angles of the respective angular classes (FALSE).

object, x

an object of class sample.variogram

.

type, xlim, ylim, xlab, ylab

see respective arguments of plot.default.

add

logical controlling whether a new plot should be generated (FALSE, default) or whether the information should be added to the current plot (TRUE).

col

the color of plotting symbols for distinguishing semivariances for angular classes in the x-y-plane.

pch

the type of plotting symbols for distinguishing semivariances for angular classes in the x-z-plane.

cex

character expansion factor for plotting symbols.

annotate.npairs

logical controlling whether the plotting symbols should be annotated by the number of data pairs per lag class.

npairs.pos

integer defining the position where text annotation about number of pairs should be plotted, see text.

npairs.cex

numeric defining the character expansion for text annotation about number of pairs.

legend

logical controlling whether a legend should be plotted.

legend.pos

a character keyword defining where to place the legend, see legend for possible values.

...

additional arguments passed to plot.sample.variogram and lines.georob.

Details

The angular classes in the x-y- and x-z-plane are defined by vectors of ascending angles on the half circle. The ith angular class is defined by the vector elements, say l and u, with indices i and i+1. A lag vector belongs to the ith angular class if its azimuth (or angle from zenith), say \varphi, satisfies l < φ <= u. If the first and the last angles of xy.angle.def or xz.angle.def are equal to 0 and 180 degrees, respectively, then the first and the last angular class are “joined”, i.e., if there are K angles, there will be only K-2 angular classes and the first class is defined by the interval ( xy.angle.def[K-1]-180, xy.angle.def[2] ] and the last class by ( xy.angle.def[K-2], xy.angle.def[K-1] ].

Value

An object of class sample.variogram, which is a data frame with the following components:

lag.dist the mean lag distance of the lag class,
xy.angle the angular class in the x-y-plane,
xz.angle the angular class in the x-z-plane,
gamma the estimated semivariance of the lag class,
npairs the number of data pairs in the lag class,
lag.x the x-component of the mean lag vector of the lag class,
lag.x the y-component of the mean lag vector of the lag class,
lag.z the z-component of the mean lag vector of the lag class.

Author(s)

Andreas Papritz andreas.papritz@env.ethz.ch.

References

Cressie, N. and Hawkins, D. M. (1980) Robust Estimation of the Variogram: I. Mathematical Geology, 12, 115–125.

Dowd, P. A. (1984) The variogram and kriging: Robust and resistant estimators. In Geostatistics for Natural Resources Characterization, Verly, G., David, M., Journel, A. and Marechal, A. (Eds.) Dordrecht: D. Reidel Publishing Company, Part I, 1, 91–106.

Genton, M. (1998) Highly Robust Variogram Estimation. Mathematical Geology, 30, 213–220.

See Also

georobIntro for a description of the model and a brief summary of the algorithms; georob for (robust) fitting of spatial linear models; fit.variogram.model for fitting variogram models to sample variograms.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
data(wolfcamp, package = "geoR")

## fitting an isotropic IRF(0) model
r.sv.iso <- sample.variogram(wolfcamp[["data"]], locations = wolfcamp[[1]], 
    lag.class.def = seq(0, 200, by = 15))

## Not run: 
plot( r.sv.iso, type = "l")
## End(Not run)

## fitting an anisotropic IRF(0) model
r.sv.aniso <- sample.variogram(wolfcamp[["data"]],
    locations = wolfcamp[[1]], lag.class.def = seq(0, 200, by = 15),
    xy.angle.def = c(0., 22.5, 67.5, 112.5, 157.5, 180.))
## Not run: 
plot(r.sv.aniso, type = "l", add = TRUE, col = 2:5)
## End(Not run)

georob documentation built on May 2, 2019, 6:53 p.m.