bptest.sarlm
BreuschPagan test for spatial models
Performs the BreuschPagan test for heteroskedasticity on the least squares fit of the spatial models taking the spatial coefficients rho or lambda into account. This function is a copy of the bptest
function in package "lmtest", modified to use objects returned by spatial simultaneous autoregressive models.
 Keywords
 spatial
Usage
bptest.sarlm(object, varformula=NULL, studentize = TRUE, data=list())
Arguments
 object
 An object of class
"sarlm"
fromerrorsarlm()
orlagsarlm()
.  varformula
 a formula describing only the potential explanatory variables for the variance (no dependent variable needed). By default the same explanatory variables are taken as in the main regression model
 studentize
 logical. If set to
TRUE
Koenker's studentized version of the test statistic will be used.  data
 an optional data frame containing the variables in the varformula
Details
Asymptotically this corresponds to the test given by Anselin (1988), but is not exactly the same. The studentized version is more conservative and perhaps to be prefered. The residuals, and for spatial error models the RHS variables, are adjusted for the spatial coefficient, as suggested bt Luc Anselin (personal communication).
It is also technically possible to make heteroskedasticity corrections to standard error estimates by using the “lm.target” component of sarlm
objects  using functions in the lmtest and sandwich packages.
Value

A list with class
"htest"
containing the following components:References
T.S. Breusch & A.R. Pagan (1979), A Simple Test for Heteroscedasticity and Random Coefficient Variation. Econometrica 47, 12871294
W. KrĂ¤mer & H. Sonnberger (1986), The Linear Regression Model under Test. Heidelberg: Physica.
L. Anselin (1988) Spatial econometrics: methods and models. Dordrecht: Kluwer, pp. 121122.
See Also
Examples
example(columbus)
error.col < errorsarlm(CRIME ~ HOVAL + INC, data=columbus,
nb2listw(col.gal.nb))
bptest.sarlm(error.col)
bptest.sarlm(error.col, studentize=FALSE)
## Not run:
# lm.target < lm(error.col$tary ~ error.col$tarX  1)
# if (require(lmtest) && require(sandwich)) {
# coeftest(lm.target, vcov=vcovHC(lm.target, type="HC0"), df=Inf)
# }
# ## End(Not run)