## S3 method for class 'ppm':
vcov(object, \dots, what = "vcov", verbose = TRUE,
gam.action=c("warn", "fatal", "silent"),
matrix.action=c("warn", "fatal", "silent"),
hessian=FALSE)
"ppm"
.)"vcov"
for the variance-covariance matrix,
"corr"
for the correlation matrix, and
"fisher"
or "Fisher"
TRUE
, a message will be printed
if various minor problems are encountered.object
was
fitted by gam
.In a Gibbs model, a singular matrix may also occur if the fitted model is a hard core process: this is a feature of the variance estimator.
object
. It is a method for the
generic function vcov
. object
should be an object of class "ppm"
, typically
produced by ppm
.
The canonical parameters of the fitted model object
are the quantities returned by coef.ppm(object)
.
The function vcov
calculates the variance-covariance matrix
for these parameters.
The argument what
provides three options:
[object Object],[object Object],[object Object]
In all three cases, the result is a square matrix.
The rows and columns of the matrix correspond to the canonical
parameters given by coef.ppm(object)
. The row and column
names of the matrix are also identical to the names in
coef.ppm(object)
.
For models fitted by maximum pseudolikelihood (which is the
default in ppm
), the implementation works
as follows.
object
is a Poisson process,
the calculations are based on standard asymptotic theory for the maximum
likelihood estimator (Kutoyants, 1998).
The observed Fisher information matrix of the fitted modelobject
is first computed, by
summing over the Berman-Turner quadrature points in the fitted model.
The asymptotic variance-covariance matrix is calculated as the
inverse of the
observed Fisher information. The correlation matrix is then obtained
by normalising. For models fitted by the Huang-Ogata method (method="ho"
in
the call to ppm
), the implementation uses the
Monte Carlo estimate of the Fisher information matrix that was
computed when the original model was fitted.
The argument verbose
makes it possible to suppress some
diagnostic messages.
The asymptotic theory is not correct if the model was fitted using
gam
(by calling ppm
with use.gam=TRUE
).
The argument gamaction
determines what to do in this case.
If gamaction="fatal"
, an error is generated.
If gamaction="warn"
, a warning is issued and the calculation
proceeds using the incorrect theory for the parametric case, which is
probably a reasonable approximation in many applications.
If gamaction="silent"
, the calculation proceeds without a
warning.
If hessian=TRUE
then the negative Hessian (second derivative)
matrix of the log pseudolikelihood, and its inverse, will be computed.
For non-Poisson models, this is not a valid estimate of variance,
but is useful for other calculations.
Note that standard errors and 95% confidence intervals for
the coefficients can also be obtained using
confint(object)
or coef(summary(object))
.
Kutoyants, Y.A. (1998) Statistical Inference for Spatial Poisson Processes, Lecture Notes in Statistics 134. New York: Springer 1998.
vcov
for the generic, ppm
for information about fitted models,
confint
for confidence intervals.
X <- rpoispp(42)
fit <- ppm(X, ~ x + y)
vcov(fit)
vcov(fit, what="Fish")
# example of singular system
data(demopat)
m <- ppm(demopat, ~polynom(x,y,2))
try(v <- vcov(m))
# rescale x, y coordinates to range [0,1] x [0,1] approximately
demopat <- rescale(demopat, 10000)
m <- ppm(demopat, ~polynom(x,y,2))
v <- vcov(m)
# Gibbs example
fitS <- ppm(swedishpines, ~1, Strauss(9))
coef(fitS)
sqrt(diag(vcov(fitS)))
Run the code above in your browser using DataLab