GMerrorsar {spdep} | R Documentation |
An implementation of Kelejian and Prucha's generalised moments estimator for the autoregressive parameter in a spatial model.
GMerrorsar(formula, data = list(), listw, na.action = na.fail, zero.policy = FALSE, return_LL = TRUE, method="Nelder-Mead", control = list(), pars, verbose=FALSE, sparse_method="Matrix")
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 |
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 |
if TRUE assign zero to the lagged value of zones without
neighbours, if FALSE (default) assign NA - causing GMerrorsar() to terminate with an error |
return_LL |
default TRUE, if FALSE, do not try to calculate the log likelihood of the function for the fitted model values — see details |
method |
default "Nelder-Mead" , method passed to optim , or optionally "nlminb" to use an alternative optimizer |
control |
A list of control parameters. See details in optim or nlminb . |
pars |
starting values for lambda and sigma squared for GMM optimisation, if missing (default), approximated from initial OLS model as the autocorrelation coefficient corrected for weights style and model sigma squared |
verbose |
default=FALSE; if TRUE, reports function values during optimization. |
sparse_method |
default "Matrix", can also be "spam" to use spam package objects for finding the Jacobian |
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. For moderately sized data sets with hundreds of observations, but not many thousands, the Jacobian is computed once to give the likelihood of the fitted model, allowing a test against the model with no spatial dependence.
Note that the fitted() function for the output object assumes that the response variable may be reconstructed as the sum of the trend, the signal, and the noise (residuals). Since the values of the response variable are known, their spatial lags are used to calculate signal components (Cressie 1993, p. 564). This differs from other software, including GeoDa, which does not use knowledge of the response variable in making predictions for the fitting data.
A list object of class gmsar
lambda |
simultaneous autoregressive error coefficient |
coefficients |
GMM coefficient estimates |
rest.se |
GMM coefficient standard errors |
s2 |
GMM residual variance |
SSE |
sum of squared GMM errors |
parameters |
number of parameters estimated |
lm.model |
the lm object returned when estimating for lambda=0 |
call |
the call used to create this object |
residuals |
GMM residuals |
lm.target |
the lm object returned for the GMM fit |
fitted.values |
Difference between residuals and response variable |
formula |
model formula |
aliased |
if not NULL, details of aliased variables |
zero.policy |
zero.policy for this model |
LL |
log likelihood value at computed optimum |
vv |
list of internal bigG and litg components for testing optimisation surface |
optres |
object returned by optimizer |
na.action |
(possibly) named vector of excluded or omitted observations if non-default na.action argument used |
Luc Anselin and Roger Bivand
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.
data(oldcol) COL.errW.eig <- errorsarlm(CRIME ~ INC + HOVAL, data=COL.OLD, nb2listw(COL.nb, style="W"), method="eigen") summary(COL.errW.eig) COL.errW.GM <- GMerrorsar(CRIME ~ INC + HOVAL, data=COL.OLD, nb2listw(COL.nb, style="W")) summary(COL.errW.GM) COL.errW.GM1 <- GMerrorsar(CRIME ~ INC + HOVAL, data=COL.OLD, nb2listw(COL.nb, style="W"), sparse_method="spam") summary(COL.errW.GM1) example(NY_data) esar1f <- spautolm(Z ~ PEXPOSURE + PCTAGE65P + PCTOWNHOME, data=nydata, listw=listw_NY, family="SAR", method="full") summary(esar1f) esar1gm <- GMerrorsar(Z ~ PEXPOSURE + PCTAGE65P + PCTOWNHOME, data=nydata, listw=listw_NY) summary(esar1gm)