public class TimeSeriesFilter extends Object implements Serializable
Class TimeSeriesFilter
can be used to operate on a data matrix and lags every
column to form a new data matrix. Using the method computeLags
, each column of the input matrix,
x
, is transformed into (nLags
+1) columns by
creating a column for \(\text{lags} = 0, 1, \ldots \text{nLags}\).
The output data array, z, can be symbolically represented as:
$$z = | x(0) : x(1) : x(2) : \ldots : x(\text{nLags}-1) |,$$
where x(i)
is a lagged column of the incoming data matrix,
x
.
Consider, an example in which x
has five rows and two columns with all variables
continuous input attributes. Using nObs and nVar to represent
the number of rows and columns in x
, let
$$x = \left[ \begin{array}{cc}
1 & 6 \\
2 & 7 \\
3 & 8 \\
4 & 9 \\
5 & 10 \\
\end{array} \right]$$
If nLags=1
, then the number of columns in z[][] is
nVar*(nLags+1)=2*2=4, and the number of rows is
(nObs-nLags)=5-1=4:
$$z = \left[ \begin{array}{cccc}
1 & 6 & 2 & 7\\
2 & 7 & 3 & 8 \\
3 & 8 & 4 & 9 \\
4 & 9 & 5 & 10 \\
\end{array} \right]$$
If nLags=2
, then the number of rows in z will be
(nObs-nLags)=(5-2)=3 and the number of columns will be
nVar*(nLags+1)=2*3=6:
$$z = \left[ \begin{array}{cccccc}
1 & 6 & 2 & 7 & 3 & 8\\
2 & 7 & 3 & 8 & 4 & 9 \\
3 & 8 & 4 & 9 & 5 & 10 \\
\end{array} \right]$$
Constructor and Description |
---|
TimeSeriesFilter()
Constructor for
TimeSeriesClassFilter . |
Modifier and Type | Method and Description |
---|---|
double[][] |
computeLags(int nLags,
double[][] x)
Lags time series data to a format used for input to a neural network.
|
public TimeSeriesFilter()
TimeSeriesClassFilter
.public double[][] computeLags(int nLags, double[][] x)
nLags
- An int
containing the requested number of lags.
nLags
must be greater than 0.x
- A double
matrix, nObs by nVar,
containing the time series data to be lagged. It is
assumed that x
is sorted in descending
chronological order.double
matrix with (nObs-nLags
)
rows and (nVar(nLags+1
)) columns. The columns
0 through (nVar-1) contain the columns of x
.
The next nVar columns contain the first lag of the
columns in x
, etc.Copyright © 2020 Rogue Wave Software. All rights reserved.