NAG Library Function Document
nag_tsa_multi_part_lag_corr (g13dnc)
1 Purpose
nag_tsa_multi_part_lag_corr (g13dnc) calculates the sample partial lag correlation matrices of a multivariate time series. A set of
-statistics and their significance levels are also returned. A call to
nag_tsa_multi_cross_corr (g13dmc) is usually made prior to calling this function in order to calculate the sample cross-correlation matrices.
2 Specification
| #include <nag.h> |
| #include <nagg13.h> |
| void |
nag_tsa_multi_part_lag_corr (Integer k,
Integer n,
Integer m,
const double r0[],
const double r[],
Integer *maxlag,
double parlag[],
double x[],
double pvalue[],
NagError *fail) |
|
3 Description
Let
, for
, denote
observations of a vector of
time series. The partial lag correlation matrix at lag
,
, is defined to be the correlation matrix between
and
, after removing the linear dependence on each of the intervening vectors
. It is the correlation matrix between the residual vectors resulting from the regression of
on the carriers
and the regression of
on the same set of carriers; see
Heyse and Wei (1985).
has the following properties.
| (i) |
If follows a vector autoregressive model of order , then for ; |
| (ii) |
When , reduces to the univariate partial autocorrelation at lag ; |
| (iii) |
Each element of is a properly normalized correlation coefficient; |
| (iv) |
When , is equal to the cross-correlation matrix at lag (a natural property which also holds for the univariate partial autocorrelation function). |
Sample estimates of the partial lag correlation matrices may be obtained using the recursive algorithm described in
Wei (1990). They are calculated up to lag
, which is usually taken to be at most
. Only the sample cross-correlation matrices (
, for
) and the standard deviations of the series are required as input to nag_tsa_multi_part_lag_corr (g13dnc). These may be computed by
nag_tsa_multi_cross_corr (g13dmc). Under the hypothesis that
follows an autoregressive model of order
, the elements of the sample partial lag matrix
, denoted by
, are asymptotically Normally distributed with mean zero and variance
. In addition the statistic
has an asymptotic
-distribution with
degrees of freedom. These quantities,
, are useful as a diagnostic aid for determining whether the series follows an autoregressive model and, if so, of what order.
4 References
Heyse J F and Wei W W S (1985) The partial lag autocorrelation function Technical Report No. 32 Department of Statistics, Temple University, Philadelphia
Wei W W S (1990) Time Series Analysis: Univariate and Multivariate Methods Addison–Wesley
5 Arguments
- 1:
k – IntegerInput
-
On entry:
, the dimension of the multivariate time series.
Constraint:
.
- 2:
n – IntegerInput
On entry: , the number of observations in each series.
Constraint:
.
- 3:
m – IntegerInput
On entry:
, the number of partial lag correlation matrices to be computed. Note this also specifies the number of sample cross-correlation matrices that must be contained in the array
r.
Constraint:
.
- 4:
r0[] – const doubleInput
On entry: the sample cross-correlations at lag zero/standard deviations as provided by
nag_tsa_multi_cross_corr (g13dmc), that is,
must contain the
th element of the sample cross-correlation matrix at lag zero if
and the standard deviation of
, for
and
.
- 5:
r[] – const doubleInput
On entry: the sample cross-correlations as provided by
nag_tsa_multi_cross_corr (g13dmc), that is,
must contain the
th element of the sample cross-correlation at lag
, for
,
and
, where series
leads series
.
- 6:
maxlag – Integer *Output
On exit: the maximum lag up to which partial lag correlation matrices (along with
-statistics and their significance levels) have been successfully computed. On a successful exit
maxlag will equal
m. If
MATRIX_ILL_CONDITIONED on exit, then
maxlag will be less than
m.
- 7:
parlag[] – doubleInput/Output
On exit: contains the th element of the sample partial lag correlation matrix at lag , for , and .
- 8:
x[m] – doubleOutput
On exit: contains the -statistic at lag , for .
- 9:
pvalue[m] – doubleOutput
On exit:
contains the significance level of the corresponding
-statistic in
x, for
.
- 10:
fail – NagError *Input/Output
-
The NAG error argument (see
Section 3.6 in the Essential Introduction).
6 Error Indicators and Warnings
- MATRIX_ILL_CONDITIONED
The recursive equations used to compute the partial lag correlation matrices are ill-conditioned (they have been computed up to lag ).
- NE_ALLOC_FAIL
Dynamic memory allocation failed.
- NE_BAD_PARAM
On entry, argument had an illegal value.
- NE_INT
On entry, .
Constraint: .
On entry, .
Constraint: .
On entry, .
Constraint: .
- NE_INT_2
On entry, and .
Constraint: .
- NE_INTERNAL_ERROR
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact
NAG for assistance.
7 Accuracy
The accuracy will depend upon the accuracy of the sample cross-correlations.
The time taken is roughly proportional to .
If you have calculated the sample cross-correlation matrices in the arrays
r0 and
r, without calling
nag_tsa_multi_cross_corr (g13dmc), then care must be taken to ensure they are supplied as described in
Section 5. In particular, for
,
must contain the sample cross-correlation coefficient between
and
.
The function
nag_tsa_multi_auto_corr_part (g13dbc) computes squared partial autocorrelations for a specified number of lags. It may also be used to estimate a sequence of partial autoregression matrices at lags
by making repeated calls to the function with the argument
nk set to
. The
th element of the sample partial autoregression matrix at lag
is given by
when
nk is set equal to
on entry to
nag_tsa_multi_auto_corr_part (g13dbc). Note that this is the ‘Yule–Walker’ estimate. Unlike the partial lag correlation matrices computed by nag_tsa_multi_part_lag_corr (g13dnc), when
follows an autoregressive model of order
, the elements of the sample partial autoregressive matrix at lag
do not have variance
, making it very difficult to spot a possible cut-off point. The differences between these matrices are discussed further by
Wei (1990).
Note that
nag_tsa_multi_auto_corr_part (g13dbc) takes the sample cross-covariance matrices as input whereas this function requires the sample cross-correlation matrices to be input.
9 Example
This example computes the sample partial lag correlation matrices of two time series of length , up to lag . The matrices, their -statistics and significance levels and a plot of symbols indicating which elements of the sample partial lag correlation matrices are significant are printed. Three * represent significance at the % level, two * represent significance at the 1% level and a single * represents significance at the 5% level. The * are plotted above or below the central line depending on whether the elements are significant in a positive or negative direction.
9.1 Program Text
Program Text (g13dnce.c)
9.2 Program Data
Program Data (g13dnce.d)
9.3 Program Results
Program Results (g13dnce.r)