View source: R/functional_pca.R
| functional_pca | R Documentation |
Performs functional principal component analysis on fitted disease progress curves
returned by functional_curves. The function decomposes variation among epidemic
trajectories into orthogonal temporal components and returns curve-level scores,
eigenfunctions, variance explained, and reconstructed curves.
functional_pca(object, ...)
## S3 method for class 'functional_curves'
functional_pca(
object,
n_components = NULL,
var_explained = 0.95,
center = TRUE,
scale = FALSE,
method = c("pca_on_grid"),
...
)
## S3 method for class 'functional_dsp'
functional_pca(
object,
n_components = NULL,
var_explained = 0.95,
center = TRUE,
scale = FALSE,
method = c("pca_on_grid"),
...
)
object |
An object returned by |
... |
Additional arguments for future extensions. |
n_components |
Optional integer number of functional principal components to retain. |
var_explained |
Cumulative variance threshold used when |
center |
Logical; whether to center curves before PCA. Default TRUE. |
scale |
Logical; whether to scale grid columns before PCA. Default FALSE. |
method |
Character; method for FPCA, currently only |
The function uses the fitted curves from functional_curves() and does not refit
the disease progress model. The first implementation uses PCA on a common prediction grid.
FPC scores can be analyzed as functional epidemiological traits in downstream models.
Interpretation:
FPC1 often captures the largest mode of variation, commonly overall epidemic intensity or speed.
Later FPCs may capture timing of disease onset, curve crossing, late acceleration, or other shape-related deviations.
Interpretation must be data-driven and should be based on eigenfunction plots and mean +/- perturbation plots.
An object of class "r4pde_functional_pca" containing:
scores: Tibble of curve-level FPC scores.
eigenfunctions: Tibble of eigenfunction values across the time grid.
variance: Tibble of eigenvalues, variance explained, and cumulative variance.
mean_curve: Tibble of the mean curve.
reconstructed: Tibble of reconstructed curves using retained components.
input_curves: Tibble of original fitted curves.
pca: The underlying prcomp object.
settings: List of settings used.
call: The matched call.
## Not run:
curves <- functional_curves(...)
fpca <- functional_pca(curves, var_explained = 0.95)
print(fpca)
plot(fpca, type = "scree")
plot(fpca, type = "components")
plot(fpca, type = "scores", components = c(1, 2))
scores <- get_fpca_scores(fpca)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.