fts.dpca.filters {freqdom.fda} | R 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 |
Ndpc |
an integer |
q |
a non-negative integer. DPCA filter coefficients at lags |
Details
Dynamic principal components are linear filters (\phi_{\ell k}(u)\colon k\in \mathbf{Z})
, 1\leq\ell\leq d
.
They are defined as the Fourier coefficients of the dynamic eigenvector \varphi_\ell(\omega)(u)
of a spectral density
kernel f_\omega(u,v)
, i.e. \int_0^1 f_\omega(u,v)\varphi_\ell(\omega)(v)dv=\lambda_\ell(\omega)\varphi_\ell(\omega)(u)
and
\phi_{\ell k}(u):=\frac{1}{2\pi}\int_{-\pi}^\pi \varphi_\ell(\omega)(u) \exp(-ik\omega) d\omega.
The index \ell
is referring to the \ell
-th largest dynamic eigenvalue \lambda_\ell(\omega)
. For a given spectral
density operator (provided as on object of class fts.freqdom
) the function fts.dpca.filters
computes
\phi_{\ell k}(u)
for |k|\leq
q. Filters will be computed for 1\leq \ell\leq \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 lagk
, 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 classbasis.fd
(seecreate.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)