fts.dpca.filters: Functional dynamic PCA filters

View source: R/fts.dpca.filters.R

fts.dpca.filtersR Documentation

Functional dynamic PCA filters

Description

From a given spectral density operator the dynamic principal component filter sequences are computed.

Usage

fts.dpca.filters(F, Ndpc = F$basisX$nbasis, q = 30)

Arguments

F

spectral density operator, provided as an object of class fts.freqdom.

Ndpc

an integer \in\{1,…, d\} with d=F$basisX$nbasis. It is the number of dynamic principal components to be computed. By default it is set equal to d.

q

a non-negative integer. DPCA filter coefficients at lags |h|≤q q will be computed. By default q=30.

Details

Dynamic principal components are linear filters (φ_{\ell k}(u)\colon k\in \mathbf{Z}), 1≤q\ell≤q d. They are defined as the Fourier coefficients of the dynamic eigenvector \varphi_\ell(ω)(u) of a spectral density kernel f_ω(u,v), i.e. \int_0^1 f_ω(u,v)\varphi_\ell(ω)(v)dv=λ_\ell(ω)\varphi_\ell(ω)(u) and

φ_{\ell k}(u):=\frac{1}{2π}\int_{-π}^π \varphi_\ell(ω)(u) \exp(-ikω) dω.

The index \ell is referring to the \ell-th largest dynamic eigenvalue λ_\ell(ω). For a given spectral density operator (provided as on object of class fts.freqdom) the function fts.dpca.filters computes φ_{\ell k}(u) for |k|≤q q. Filters will be computed for 1≤q \ell≤q \code{Ndpc}.

For more details we refer to Hormann et al. (2015).

Value

An object of class fts.timedom. The list has the following components:

  • operators \quad an array. Each matrix in this array has dimension \code{Ndpc}\times d and is assigned to a certain lag. For a given lag k, the rows of the matrix correspond to the coefficient vector of the filter functions.

  • lags \quad a vector with the lags of the filter coefficients.

  • basisX \quad F$basis, hence an object of class basis.fd (see create.basis).

  • correspondence \quad the correspondence matrix: all scalar products between basis functions.

References

Hormann, S., Kidzinski, L., and Hallin, M. Dynamic functional principal components. Journal of the Royal Statistical Society: Series B (Statistical Methodology) 77.2 (2015): 319-348.

Brillinger, D. Time Series (2001), SIAM, San Francisco.

Shumway, R.H., and Stoffer, D.S. Time Series Analysis and Its Applications (2006), Springer, New York.

See Also

The multivariate equivalent in the freqdom package: dpca.filters

Examples

data(pm10)
X = center.fd(pm10)

# Compute the spectral density operator with Bartlett weights
SD = fts.spectral.density(X, freq = (-50:50/50) * pi, q = 2, weight="Bartlett")
filters = fts.dpca.filters(SD, 2, q = 10)

# Plot filters 1 and 2
fts.plot.filters(filters, 2, one.plot = TRUE)

# Recompute with a different estimate of the spectral density (largerg q)
SD = fts.spectral.density(X, freq = (-50:50/50) * pi, q = 5, weight="Bartlett")
filters = fts.dpca.filters(SD, 2, q = 10)

# Plot filters 1 and 2
fts.plot.filters(filters, 2, one.plot = TRUE)

freqdom.fda documentation built on April 19, 2022, 1:06 a.m.