# univDecomp: Univariate basis decomposition In MFPCA: Multivariate Functional Principal Component Analysis for Data Observed on Different Dimensional Domains

## Description

This function calculates a univariate basis decomposition for a (univariate) functional data object.

## Usage

 `1` ```univDecomp(type, funDataObject, ...) ```

## Arguments

 `type` A character string, specifying the basis for which the decomposition is to be calculated. `funDataObject` A `funData` object, representing the (univariate) functional data samples. `...` Further parameters, passed to the function for the particular basis to use.

## Details

Functional data X_i(t) can often be approximated by a linear combination of basis functions b_k(t)

X_i(t) = ∑_{k = 1}^K θ_{ik} b_k(t), i = 1, …, N.

The basis functions may be prespecified (such as spline basis functions or Fourier bases) or can be estimated from the data (e.g. by functional principal component analysis) and are the same for all observations X_1(t), …, X_n(t). The coefficients (or scores) θ_{ik} reflect the weight of each basis function b_k(t) for the observed function X_i(t) and can be used to characterize the individual observations.

## Value

 `scores` A matrix of scores (coefficients) for each observation based on the prespecified basis functions. `B` A matrix containing the scalar products of the basis functions. Can be `NULL` if the basis functions are orthonormal. `ortho` Logical. If `TRUE`, the basis functions are all orthonormal. `functions` A functional data object, representing the basis functions. Can be `NULL` if the basis functions are not estimated from the data, but have a predefined form. See Details.

## Warning

The options `type = "DCT2D"` and ```type = "DCT3D"``` have not been tested with ATLAS/MKL/OpenBLAS.

`MFPCA`, `univExpansion`, `fpcaBasis`, `splineBasis1D`, `splineBasis1Dpen`, `splineBasis2D`, `splineBasis2Dpen`, `umpcaBasis`, `fcptpaBasis`, `fdaBasis`, `dctBasis2D`, `dctBasis3D`
 ``` 1 2 3 4 5 6 7 8 9 10 11``` ```# generate some data dat <- simFunData(argvals = seq(0,1,0.01), M = 5, eFunType = "Poly", eValType = "linear", N = 100)\$simData # decompose the data in univariate functional principal components... decFPCA <- univDecomp(type = "uFPCA", funDataObject = dat, npc = 5) str(decFPCA) # or in splines (penalized) decSplines <- univDecomp(type = "splines1Dpen", funDataObject = dat) # use mgcv's default params str(decSplines) ```