Does k-fold cross-validation for glmregNB, produces a plot,
and returns cross-validated log-likelihood values for lambda
cv.glmregNB(formula, data, weights, offset=NULL, lambda=NULL, nfolds=10,
foldid, plot.it=TRUE, se=TRUE, n.cores=2, trace=FALSE,
parallel=FALSE, ...)
an object of class "cv.glmregNB"
is returned, which is a
list with the ingredients of the cross-validation fit.
a fitted glmregNB object for the full data.
matrix of log-likelihood values with row values for lambda
and column values for k
th cross-validation
The mean cross-validated log-likelihood values - a vector of length
length(lambda)
.
The standard error of cross-validated log-likelihood values - a vector of length
length(lambda)
.
a vector of lambda
values
indicators of data used in each cross-validation, for reproductive purposes
index of lambda
that gives maximum cv
value.
value of lambda
that gives maximum cv
value.
symbolic description of the model
arguments controlling formula processing
via model.frame
.
Observation weights; defaults to 1 per observation
this can be used to specify an a priori known component to be included in the linear predictor during fitting. This should be NULL or a numeric vector of length equal to the number of cases. Currently only one offset term can be included in the formula.
Optional user-supplied lambda sequence; default is
NULL
, and glmregNB
chooses its own sequence
number of folds - default is 10. Although nfolds
can be as large as the sample size (leave-one-out CV), it is not
recommended for large datasets. Smallest value allowable is nfolds=3
an optional vector of values between 1 and nfold
identifying what fold each observation is in. If supplied,
nfold
can be missing.
a logical value, to plot the estimated log-likelihood values if TRUE
.
a logical value, to plot with standard errors.
The number of CPU cores to use. The cross-validation loop will attempt to send different CV folds off to different cores.
a logical value, print progress of cross-validation or not
a logical value, parallel computing or not
Other arguments that can be passed to glmregNB
.
Zhu Wang <zwang145@uthsc.edu>
The function runs glmregNB
nfolds
+1 times; the
first to get the lambda
sequence, and then the remainder to
compute the fit with each of the folds omitted. The error is
accumulated, and the average error and standard deviation over the
folds is computed.
Note that cv.glmregNB
does NOT search for
values for alpha
. A specific value should be supplied, else
alpha=1
is assumed by default. If users would like to
cross-validate alpha
as well, they should call cv.glmregNB
with a pre-computed vector foldid
, and then use this same fold vector
in separate calls to cv.glmregNB
with different values of
alpha
.
Zhu Wang, Shuangge Ma, Michael Zappitelli, Chirag Parikh, Ching-Yun Wang and Prasad Devarajan (2014) Penalized Count Data Regression with Application to Hospital Stay after Pediatric Cardiac Surgery, Statistical Methods in Medical Research. 2014 Apr 17. [Epub ahead of print]
if (FALSE) {
data("bioChemists", package = "pscl")
fm_nb <- cv.glmregNB(art ~ ., data = bioChemists)
plot(fm_nb)
}
Run the code above in your browser using DataLab