View source: R/fts.dpca.filters.R
fts.dpca.filters | R Documentation |
From a given spectral density operator the dynamic principal component filter sequences are computed.
fts.dpca.filters(F, Ndpc = F$basisX$nbasis, q = 30)
F |
spectral density operator, provided as an object of class |
Ndpc |
an integer \in\{1,…, d\} with d= |
q |
a non-negative integer. DPCA filter coefficients at lags |h|≤q q will be computed. By default |
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).
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.
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.
The multivariate equivalent in the freqdom
package: dpca.filters
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)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.