gstsls {spatialreg} | 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 = attr(listw, "zero.policy"), pars=NULL, scaleU=FALSE, control = list(),
verbose=NULL, method="nlminb", robust=FALSE, legacy=FALSE, W2X=TRUE)
## S3 method for class 'Gmsar'
impacts(obj, ..., n = NULL, tr = NULL, R = NULL,
listw = NULL, evalues=NULL, tol = 1e-06, empirical = FALSE, Q=NULL)
Arguments
formula |
a symbolic description of the model to be fit. The details
of model specification are given for |
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 |
listw2 |
a |
na.action |
a function (default |
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 |
pars |
starting values for |
scaleU |
Default FALSE: scale the OLS residuals before computing the moment matrices; only used if the |
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 |
legacy |
see |
W2X |
see |
obj |
A spatial regression object created by |
... |
Arguments passed through to methods in the coda package |
tr |
A vector of traces of powers of the spatial weights matrix created using |
evalues |
vector of eigenvalues of spatial weights matrix for impacts calculations |
R |
If given, simulations are used to compute distributions for the impact measures, returned as |
tol |
Argument passed to |
empirical |
Argument passed to |
Q |
default NULL, else an integer number of cumulative power series impacts to calculate if |
n |
defaults to |
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. doi:10.18637/jss.v063.i18.
See Also
optim
, nlminb
, GMerrorsar
, GMargminImage
Examples
#require("spdep", quietly=TRUE)
data(oldcol, package="spdep")
COL.errW.GM <- gstsls(CRIME ~ INC + HOVAL, data=COL.OLD, spdep::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,
spdep::nb2listw(COL.nb, style="W"), scaleU=TRUE)
summary(COL.errW.GM)
listw <- spdep::nb2listw(COL.nb)
W <- as(listw, "CsparseMatrix")
trMat <- trW(W, type="mult")
impacts(COL.errW.GM, tr=trMat)