Learn R Programming

freqdom.fda (version 1.0.1)

fts.cov.structure: Estimate autocovariance and cross-covariances operators

Description

This function is used to estimate a collection of cross-covariances operators of two stationary functional series.

Usage

fts.cov.structure(X, Y = X, lags = 0)

Arguments

X

an object of class fd containing \(T\) functional observations.

Y

an object of class fd containing \(T\) functional observations.

lags

an integer-valued vector \((\ell_1,\ldots, \ell_K)\) containing the lags for which covariances are calculated.

Value

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

  • operators \(\quad\) an array. Element [,,k] contains the covariance matrix of the coefficient vectors of the two time series related to lag \(\ell_k\).

  • lags \(\quad\) the lags vector from the arguments.

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

  • basisY \(\quad\) Y$basis, an object of class basis.fd (see create.basis)

Details

Let \(X_1(u),\ldots, X_T(u)\) and \(Y_1(u),\ldots, Y_T(u)\) be two samples of functional data. This function determines empirical lagged covariances between the series \((X_t(u))\) and \((Y_t(u))\). More precisely it determines $$ (\widehat{c}^{XY}_h(u,v)\colon h\in lags ), $$ where \(\widehat{c}^{XY}_h(u,v)\) is the empirical version of the covariance kernel \(\mathrm{Cov}(X_h(u),Y_0(v))\). For a sample of size \(T\) we set \(\hat\mu^X(u)=\frac{1}{T}\sum_{t=1}^T X_t(u)\) and \(\hat\mu^Y(v)=\frac{1}{T}\sum_{t=1}^T Y_t(v)\). Now for \(h \geq 0\) $$\frac{1}{T}\sum_{t=1}^{T-h} (X_{t+h}(u)-\hat\mu^X(u))(Y_t(v)-\hat\mu^Y(v))$$ and for \(h < 0\) $$\frac{1}{T}\sum_{t=|h|+1}^{T} (X_{t+h}(u)-\hat\mu^X(u))(Y_t(v)-\hat\mu^Y(v)).$$ Since \(X_t(u)=\boldsymbol{b}_1^\prime(u)\mathbf{x}_t\) and \(Y_t(u)=\mathbf{y}_t^\prime \boldsymbol{b}_2(u)\) we can write $$ \widehat{c}^{XY}_h(u,v)=\boldsymbol{b}_1^\prime(u)\widehat{C}^{\mathbf{xy}}\boldsymbol{b}_2(v), $$ where \(\widehat{C}^{\mathbf{xy}}\) is defined as for the function ``cov.structure'' for series of coefficient vectors \((\mathbf{x}_t\colon 1\leq t\leq T)\) and \((\mathbf{y}_t\colon 1\leq t\leq T)\).

See Also

The multivariate equivalent in the freqdom package: cov.structure

Examples

Run this code
# NOT RUN {
# Generate an autoregressive process
fts = fts.rar(d=3)

# Get covariance at lag 0
fts.cov.structure(fts, lags = 0)

# Get covariance at lag 10
fts.cov.structure(fts, lags = 10)

# Get entire covariance structure between -20 and 20
fts.cov.structure(fts, lags = -20:20)

# Compute covariance with another process
fts0 = fts + fts.rma(d=3)
fts.cov.structure(fts, fts0, lags = -2:2)
# }

Run the code above in your browser using DataLab