R: Spatial simultaneous autoregressive SAC model estimation by...

gstsls {spdep} | R Documentation

## Spatial simultaneous autoregressive SAC model estimation by GMM

### Description

An implementation of Kelejian and Prucha's generalised moments estimator for the autoregressive parameter in a spatial model with a spatially lagged dependent variable.

### Usage

    gstsls(formula, data = list(), listw, listw2 = NULL, na.action = na.fail,
        zero.policy = NULL, pars, scaleU=FALSE, control = list(),
        verbose=NULL, method="nlminb", robust=FALSE, legacy=FALSE, W2X=TRUE)

### Arguments

`formula` | a symbolic description of the model to be fit. The details of model specification are given for `lm()`
`data` | an optional data frame containing the variables in the model. By default the variables are taken from the environment which the function is called.
`listw` | a `listw` object created for example by `nb2listw`
`listw2` | a `listw` object created for example by `nb2listw`, if not given, set to the same spatial weights as the listw argument
`na.action` | a function (default `na.fail`), can also be `na.omit` or `na.exclude` with consequences for residuals and fitted values - in these cases the weights list will be subsetted to remove NAs in the data. It may be necessary to set zero.policy to TRUE because this subsetting may create no-neighbour observations. Note that only weights lists created without using the glist argument to `nb2listw` may be subsetted.
`zero.policy` | default NULL, use global option value; if TRUE assign zero to the lagged value of zones without neighbours, if FALSE (default) assign NA - causing `GMerrorsar()` to terminate with an error
`pars` | starting values for lambda and sigma squared for GMM optimisation, if missing (default), approximated from initial 2sls model as the autocorrelation coefficient corrected for weights style and model sigma squared
`scaleU` | Default FALSE: scale the OLS residuals before computing the moment matrices; only used if the `pars` argument is missing
`control` | A list of control parameters. See details in optim or nlminb
`verbose` | default NULL, use global option value; if TRUE, reports function values during optimization.
`method` | default nlminb, or optionally a method passed to optim to use an alternative optimizer
`robust` | see `stsls`
`legacy` | see `stsls`
`W2X` | see `stsls`

### Details

When the control list is set with care, the function will converge to values close to the ML estimator without requiring computation of the Jacobian, the most resource-intensive part of ML estimation.

### Value

A list object of class `gmsar`

`lambda` | simultaneous autoregressive error coefficient
`coefficients` | GMM coefficient estimates (including the spatial autocorrelation coefficient)
`rest.se` | GMM coefficient standard errors
`s2` | GMM residual variance
`SSE` | sum of squared GMM errors
`parameters` | number of parameters estimated
`lm.model` | NULL
`call` | the call used to create this object
`residuals` | GMM residuals
`lm.target` | NULL
`fitted.values` | Difference between residuals and response variable
`formula` | model formula
`aliased` | NULL
`zero.policy` | zero.policy for this model
`LL` | NULL
`vv` | list of internal bigG and litg components for testing optimisation surface
`optres` | object returned by optimizer
`pars` | start parameter values for optimisation
`Hcov` | NULL
`na.action` | (possibly) named vector of excluded or omitted observations if non-default na.action argument used

### Author(s)

Gianfranco Piras and Roger Bivand

### References

Kelejian, H. H., and Prucha, I. R., 1999. A Generalized Moments Estimator for the Autoregressive Parameter in a Spatial Model. International Economic Review, 40, pp. 509–533; Cressie, N. A. C. 1993 Statistics for spatial data, Wiley, New York.

Roger Bivand, Gianfranco Piras (2015). Comparing Implementations of Estimation Methods for Spatial Econometrics. Journal of Statistical Software, 63(18), 1-36. http://www.jstatsoft.org/v63/i18/.

### See Also

`optim`, `nlminb`, `GMerrorsar`, `GMargminImage`

### Examples

    data(oldcol)
    COL.errW.GM <- gstsls(CRIME ~ INC + HOVAL, data=COL.OLD, nb2listw(COL.nb, style="W"))
    summary(COL.errW.GM)
    aa <- GMargminImage(COL.errW.GM)
    levs <- quantile(aa$z, seq(0, 1, 1/12))
    image(aa, breaks=levs, xlab="lambda", ylab="s2")
    points(COL.errW.GM$lambda, COL.errW.GM$s2, pch=3, lwd=2)
    contour(aa, levels=signif(levs, 4), add=TRUE)
    COL.errW.GM <- gstsls(CRIME ~ INC + HOVAL, data=COL.OLD, nb2listw(COL.nb, style="W"), scaleU=TRUE)
    summary(COL.errW.GM)
    listw <- nb2listw(COL.nb)
    W <- as(listw, "CsparseMatrix")
    trMat <- trW(W, type="mult")
    impacts(COL.errW.GM, tr=trMat)

[Package spdep version 0.6-13 Index]