R: Saddlepoint approximation of global Moran's I test

lm.morantest.sad {spdep} | R Documentation

## Saddlepoint approximation of global Moran's I test

### Description

The function implements Tiefelsdorf's application of the Saddlepoint approximation to global Moran's I's reference distribution.

### Usage

    lm.morantest.sad(model, listw, zero.policy=NULL, alternative="greater",
      spChk=NULL, resfun=weighted.residuals, tol=.Machine$double.eps^0.5,
      maxiter=1000, tol.bounds=0.0001, zero.tol = 1e-07, Omega=NULL,
      save.M=NULL, save.U=NULL)
    ## S3 method for class 'moransad'
    print(x, ...)
    ## S3 method for class 'moransad'
    summary(object, ...)
    ## S3 method for class 'summary.moransad'
    print(x, ...)

### Arguments

`model` | an object of class `lm` returned by `lm`; weights may be specified in the `lm` fit, but offsets should not be used
`listw` | a `listw` object created for example by `nb2listw`
`zero.policy` | default NULL, use global option value; if TRUE assign zero to the lagged value of zones without neighbours, if FALSE assign NA
`alternative` | a character string specifying the alternative hypothesis, must be one of greater (default), less or two.sided.
`spChk` | should the data vector names be checked against the spatial objects for identity integrity, TRUE, or FALSE, default NULL to use `get.spChkOption()`
`resfun` | default: weighted.residuals; the function to be used to extract residuals from the `lm` object, may be `residuals`, `weighted.residuals`, `rstandard`, or `rstudent`
`tol` | the desired accuracy (convergence tolerance) for `uniroot`
`maxiter` | the maximum number of iterations for `uniroot`
`tol.bounds` | offset from bounds for `uniroot`
`zero.tol` | tolerance used to find eigenvalues close to absolute zero
`Omega` | A SAR process matrix may be passed in to test an alternative hypothesis, for example `Omega <- invIrW(listw, rho=0.1); Omega <- tcrossprod(Omega)`, `chol()` is taken internally
`save.M` | return the full M matrix for use in `spdep:::exactMoranAlt`
`save.U` | return the full U matrix for use in `spdep:::exactMoranAlt`
`x` | object to be printed
`object` | object to be summarised
`...` | arguments to be passed through

### Details

The function involves finding the eigenvalues of an n by n matrix, and numerically finding the root for the Saddlepoint approximation, and should therefore only be used with care when n is large.

### Value

A list of class `moransad` with the following components:

`statistic` | the value of the saddlepoint approximation of the standard deviate of global Moran's I.
`p.value` | the p-value of the test.
`estimate` | the value of the observed global Moran's I.
`alternative` | a character string describing the alternative hypothesis.
`method` | a character string giving the method used.
`data.name` | a character string giving the name(s) of the data.
`internal1` | Saddlepoint omega, r and u
`internal2` | f.root, iter and estim.prec from `uniroot`
`df` | degrees of freedom
`tau` | eigenvalues (excluding zero values)

### Author(s)

Roger Bivand Roger.Bivand@nhh.no

### References

Tiefelsdorf, M. 2002 The Saddlepoint approximation of Moran's I and local Moran's Ii reference distributions and their numerical evaluation. Geographical Analysis, 34, pp. 187–206.

### See Also

`lm.morantest`

### Examples

    require(maptools)
    eire <- readShapePoly(system.file("etc/shapes/eire.shp", package="spdep")[1],
      ID="names", proj4string=CRS("+proj=utm +zone=30 +ellps=airy +units=km"))
    eire.nb <- poly2nb(eire)
    #data(eire)
    e.lm <- lm(OWNCONS ~ ROADACC, data=eire)
    lm.morantest(e.lm, nb2listw(eire.nb))
    lm.morantest.sad(e.lm, nb2listw(eire.nb))
    summary(lm.morantest.sad(e.lm, nb2listw(eire.nb)))
    e.wlm <- lm(OWNCONS ~ ROADACC, data=eire, weights=RETSALE)
    lm.morantest(e.wlm, nb2listw(eire.nb), resfun=rstudent)
    lm.morantest.sad(e.wlm, nb2listw(eire.nb), resfun=rstudent)

[Package spdep version 0.6-13 Index]