| hmatr {Rssa} | R Documentation |
Calculate the heterogeneity matrix.
Description
Function calculates the heterogeneity matrix for the one-dimensional series.
Usage
hmatr(F, ...,
B = N %/% 4, T = N %/% 4, L = B %/% 2,
neig = 10)
## S3 method for class 'hmatr'
plot(x,
col = rev(heat.colors(256)),
main = "Heterogeneity Matrix", xlab = "", ylab = "", ...)
Arguments
F |
the series to be checked for structural changes |
... |
further arguments passed to |
B |
integer, length of base series |
T |
integer, length of tested series |
L |
integer, window length for the decomposition of the base series |
neig |
integer, number of eigentriples to consider for calculating projections |
x |
'hmatr' object |
col |
color palette to use |
main |
plot title |
xlab, ylab |
labels for 'x' and 'y' axis |
Details
The heterogeneity matrix (H-matrix) provides a
consistent view on the structural discrepancy between different parts of the
series. Denote by F_{i,j} the subseries of F of the form: F_{i,j} =
\left(f_{i},\dots,f_{j}\right). Fix two integers B > L and T \geq L. Let
these integers denote the lengths of base and test subseries,
respectively. Introduce the H-matrix G_{B,T} with the elements g_{ij} as
follows:
g_{ij} = g(F_{i,i+B}, F_{j,j+T}),
for i=1,\dots,N-B+1 and j=1,\dots,N-T+1, that is we split the series
F into subseries of lengths B and T and calculate the heterogeneity index
between all possible pairs of the subseries.
The heterogeneity index g(F^{(1)}, F^{(2)}) between the series
F^{(1)} and F^{(2)} can be calculated as follows: let
U_{j}^{(1)}, j=1,\dots,L denote the eigenvectors of the
SVD of the trajectory matrix of the series F^{(1)}. Fix I to be a
subset of \left\{1,\dots,L\right\} and denote \mathcal{L}^{(1)} =
\mathrm{span}\,\left(U_{i},\, i \in I\right). Denote by
X^{(2)}_{1},\dots,X^{(2)}_{K_{2}} (K_{2} = N_{2} - L + 1) the
L-lagged vectors of the series F^{(2)}. Now define
g(F^{(1)},F^{(2)})
= \frac{\sum_{j=1}^{K_{2}}{\mathrm{dist}^{2}\left(X^{(2)}_{j},
\mathcal{L}^{(1)}\right)}}
{\sum_{j=1}^{K_{2}}{\left\|X^{(2)}_{j}\right\|^{2}}},
where
\mathrm{dist}\,(X,\mathcal{L}) denotes the Euclidean distance between the
vector X and the subspace \mathcal{L}. One can easily see that
0 \leq g \leq 1.
Value
object of type 'hmatr'
References
Golyandina, N., Nekrutkin, V. and Zhigljavsky, A. (2001): Analysis of Time Series Structure: SSA and related techniques. Chapman and Hall/CRC. ISBN 1584881941
See Also
Examples
# Calculate H-matrix for co2 series
h <- hmatr(co2, L = 24)
# Plot the matrix
plot(h)