Predict corresponding time for groups of observations on cross-validation
Source:R/zeitzeiger_cv.R
zeitzeigerPredictGroupCv.Rd
Predict corresponding time for each group of observations in cross-validation. Thus, each fold is equivalent to a group.
Usage
zeitzeigerPredictGroupCv(
x,
time,
foldid,
spcResultList,
nKnots = 3,
nSpc = NA,
timeRange = seq(0, 1 - 0.01, 0.01),
dopar = TRUE
)
Arguments
- x
Matrix of measurements, observations in rows and features in columns.
- time
Vector of values of the periodic variable for observations, where 0 corresponds to the lowest possible value and 1 corresponds to the highest possible value.
- foldid
Vector of values indicating the fold to which each observation belongs.
- spcResultList
Result from
zeitzeigerSpcCv()
.- nKnots
Number of internal knots to use for the periodic smoothing spline.
- nSpc
Vector of the number of SPCs to use for prediction. If
NA
(default),nSpc
will become1:K
, whereK
is the number of SPCs inspcResult
. Each value innSpc
will correspond to one prediction for each test observation. A value of 2 means that the prediction will be based on the first 2 SPCs.- timeRange
Vector of values of the periodic variable at which to calculate likelihood. The time with the highest likelihood is used as the initial value for the MLE optimizer.
- dopar
Logical indicating whether to process the folds in parallel. Use
doParallel::registerDoParallel()
to register the parallel backend.
Value
A list of the same structure as zeitzeigerPredictGroup
, combining
the results from each fold of cross-validation. Folds (i.e, groups) will be
sorted by foldid.
- timeDepLike
3-D array of likelihood, with dimensions for each fold, each element of
nSpc
, and each element oftimeRange
.- mleFit
List (for each element in
nSpc
) of lists (for each fold) ofmle2
objects.- timePred
Matrix of predicted times for folds by values of
nSpc
.