Perform leave-one-out cross validation with options for computationally efficient approximations for big data.
loocv(object, ...)# S3 method for splm
loocv(
object,
cv_predict = FALSE,
se.fit = FALSE,
local,
interval = c("none", "prediction"),
level = 0.95,
...
)
# S3 method for spautor
loocv(
object,
cv_predict = FALSE,
se.fit = FALSE,
local,
interval = c("none", "prediction"),
level = 0.95,
...
)
# S3 method for spglm
loocv(
object,
cv_predict = FALSE,
type = c("link", "response"),
se.fit = FALSE,
delta = FALSE,
local,
...
)
# S3 method for spgautor
loocv(
object,
cv_predict = FALSE,
type = c("link", "response"),
se.fit = FALSE,
delta = FALSE,
local,
...
)
If cv_predict = FALSE and se.fit = FALSE,
a fit statistics tibble (with bias, MSPE, RMSPE, and cor2; see Details).
If cv_predict = TRUE or se.fit = TRUE,
a list with elements: stats, a fit statistics tibble
(with bias, MSPE, RMSPE, and cor2; see Details); cv_predict, a numeric vector
with leave-one-out predictions for each observation (if cv_predict = TRUE);
and se.fit, a numeric vector with leave-one-out prediction standard
errors for each observation (if se.fit = TRUE). When object is from
splm() or spautor() and interval = "prediction", the fit
statistics tibble also has a cover.XX column (e.g. cover.95
for level = 0.95; see Details).
A fitted model object from splm(), spautor(), spglm(), or spgautor().
Other arguments. Not used (needed for generic consistency).
A logical indicating whether the leave-one-out fitted values
should be returned. Defaults to FALSE. If object is from spglm() or spgautor(),
the fitted values returned are on the link scale.
A logical indicating whether the leave-one-out
prediction standard errors should be returned. Defaults to FALSE.
If object is from spglm() or spgautor(),
the standard errors correspond to the fitted values returned on the link scale.
A list or logical. If a list, specific list elements described
in predict.spmodel() control the big data approximation behavior.
If a logical, TRUE chooses default list elements for the list version
of local as specified in predict.spmodel(). Defaults to FALSE,
which performs exact computations.
Whether to also report empirical leave-one-out prediction
interval coverage in the returned fit statistics. "none" (the
default) omits it; "prediction" reports it (see Details). Only
available for splm()/spautor() objects.
The prediction interval level (e.g. 0.95) used to compute
prediction interval coverage when interval = "prediction". Ignored otherwise. The
default is 0.95.
The scale (response or link) of predictions obtained
when cv_predict = TRUE and using spglm() or spgautor objects.
A logical indicating whether to return delta method standard errors
on the response scale when se.fit = TRUE and type = "response". The default is FALSE.
Each observation is held-out from the data set and the remaining data
are used to make a prediction for the held-out observation. This is compared
to the true value of the observation and several fit statistics are (sometimes optionally) computed:
bias, mean-squared-prediction error (MSPE), root-mean-squared-prediction
error (RMSPE), and the squared correlation (cor2) between the observed data
and leave-one-out predictions (regarded as a prediction version of r-squared
appropriate for comparing across spatial and nonspatial models), and
prediction interval coverage (cover.XX). Generally,
bias should be near zero and prediction interval coverage at the
intended level for well-fitting models. The lower the MSPE and RMSPE,
the better the model fit (according to the leave-out-out criterion).
The higher the cor2, the better the model fit (according to the leave-out-out
criterion). cor2 and cover.XX are not returned when object was fit using
spglm() or spgautor() because we do not observe the underlying latent mean.
spmod <- splm(z ~ water + tarp,
data = caribou,
spcov_type = "exponential", xcoord = x, ycoord = y
)
loocv(spmod)
loocv(spmod, cv_predict = TRUE, se.fit = TRUE)
Run the code above in your browser using DataLab