Prior to using functions X
as predictors in a scalar-on-function regression, it is often
necessary to presmooth curves to remove measurement error or interpolate to a common grid. This
function creates a function to do this preprocessing depending on the method specified.
create.prep.func(
X,
argvals = seq(0, 1, length = ncol(X)),
method = c("fpca.sc", "fpca.face", "fpca.ssvd", "bspline", "interpolate"),
options = NULL
)
a function that returns the preprocessed functional predictors, with arguments
The functional predictors to process
Indices of evaluation of newX
Any options needed to preprocess the predictor functions
an N
by J=ncol(argvals)
matrix of function evaluations
\(X_i(t_{i1}),., X_i(t_{iJ}); i=1,.,N.\) For FPCA-based processing methods, these functions are
used to define the eigen decomposition used to preprocess current and future data (for example, in
predict.pfr
)
matrix (or vector) of indices of evaluations of \(X_i(t)\); i.e. a matrix with ith row \((t_{i1},.,t_{iJ})\)
character string indicating the preprocessing method. Options
are "fpca.sc"
, "fpca.face"
, "fpca.ssvd"
, "bspline"
,
and "interpolate"
. The first three use the corresponding existing function;
"bspline"
uses an (unpenalized) cubic bspline smoother with nbasis
basis
functions; "interpolate"
uses linear interpolation.
list of options passed to the preprocessing method; as an example, options for fpca.sc
include pve
, nbasis
, and npc
.
Jeff Goldsmith ajg2202@cumc.columbia.edu
pfr
, fpca.sc
, fpca.face
, fpca.ssvd