Integer type:  int32  int64  nag_int  show int32  show int32  show int64  show int64  show nag_int  show nag_int

Chapter Contents
Chapter Introduction
NAG Toolbox

# NAG Toolbox: nag_correg_linregm_stat_durbwat (g02fc)

## Purpose

nag_correg_linregm_stat_durbwat (g02fc) calculates the Durbin–Watson statistic, for a set of residuals, and the upper and lower bounds for its significance.

## Syntax

[d, pdl, pdu, ifail] = g02fc(ip, res, 'n', n)
[d, pdl, pdu, ifail] = nag_correg_linregm_stat_durbwat(ip, res, 'n', n)

## Description

For the general linear regression model
 $y=Xβ+ε,$
 where $y$ is a vector of length $n$ of the dependent variable, $X$ is a $n$ by $p$ matrix of the independent variables, $\beta$ is a vector of length $p$ of unknown arguments, and $\epsilon$ is a vector of length $n$ of unknown random errors.
The residuals are given by
 $r=y-y^=y-Xβ^$
and the fitted values, $\stackrel{^}{y}=X\stackrel{^}{\beta }$, can be written as $Hy$ for a $n$ by $n$ matrix $H$. Note that when a mean term is included in the model the sum of the residuals is zero. If the observations have been taken serially, that is ${y}_{1},{y}_{2},\dots ,{y}_{n}$ can be considered as a time series, the Durbin–Watson test can be used to test for serial correlation in the ${\epsilon }_{i}$, see Durbin and Watson (1950), Durbin and Watson (1951) and Durbin and Watson (1971).
The Durbin–Watson statistic is
 $d=∑i=1 n-1 ri+1-ri 2 ∑i=1nri2 .$
Positive serial correlation in the ${\epsilon }_{i}$ will lead to a small value of $d$ while for independent errors $d$ will be close to $2$. Durbin and Watson show that the exact distribution of $d$ depends on the eigenvalues of the matrix $HA$ where the matrix $A$ is such that $d$ can be written as
 $d=rTAr rTr$
and the eigenvalues of the matrix $A$ are ${\lambda }_{j}=\left(1-\mathrm{cos}\left(\pi j/n\right)\right)$, for $j=1,2,\dots ,n-1$.
However bounds on the distribution can be obtained, the lower bound being
 $dl=∑i=1 n-pλiui2 ∑i=1 n-pui2$
and the upper bound being
 $du=∑i= 1 n-pλi- 1+pui2 ∑i= 1 n-pui2 ,$
where the ${u}_{i}$ are independent standard Normal variables. The lower tail probabilities associated with these bounds, ${p}_{\mathrm{l}}$ and ${p}_{\mathrm{u}}$, are computed by nag_stat_prob_durbin_watson (g01ep). The interpretation of the bounds is that, for a test of size (significance) $\alpha$, if ${p}_{l}\le \alpha$ the test is significant, if ${p}_{u}>\alpha$ the test is not significant, while if ${p}_{\mathrm{l}}>\alpha$ and ${p}_{\mathrm{u}}\le \alpha$ no conclusion can be reached.
The above probabilities are for the usual test of positive auto-correlation. If the alternative of negative auto-correlation is required, then a call to nag_stat_prob_durbin_watson (g01ep) should be made with the argument d taking the value of $4-d$; see Newbold (1988).

## References

Durbin J and Watson G S (1950) Testing for serial correlation in least squares regression. I Biometrika 37 409–428
Durbin J and Watson G S (1951) Testing for serial correlation in least squares regression. II Biometrika 38 159–178
Durbin J and Watson G S (1971) Testing for serial correlation in least squares regression. III Biometrika 58 1–19
Granger C W J and Newbold P (1986) Forecasting Economic Time Series (2nd Edition) Academic Press
Newbold P (1988) Statistics for Business and Economics Prentice–Hall

## Parameters

### Compulsory Input Parameters

1:     $\mathrm{ip}$int64int32nag_int scalar
$p$, the number of independent variables in the regression model, including the mean.
Constraint: ${\mathbf{ip}}\ge 1$.
2:     $\mathrm{res}\left({\mathbf{n}}\right)$ – double array
The residuals, ${r}_{1},{r}_{2},\dots ,{r}_{n}$.
Constraint: the mean of the residuals $\text{}\le \sqrt{\epsilon }$, where .

### Optional Input Parameters

1:     $\mathrm{n}$int64int32nag_int scalar
Default: the dimension of the array res.
$n$, the number of residuals.
Constraint: ${\mathbf{n}}>{\mathbf{ip}}$.

### Output Parameters

1:     $\mathrm{d}$ – double scalar
The Durbin–Watson statistic, $d$.
2:     $\mathrm{pdl}$ – double scalar
Lower bound for the significance of the Durbin–Watson statistic, ${p}_{\mathrm{l}}$.
3:     $\mathrm{pdu}$ – double scalar
Upper bound for the significance of the Durbin–Watson statistic, ${p}_{\mathrm{u}}$.
4:     $\mathrm{ifail}$int64int32nag_int scalar
${\mathbf{ifail}}={\mathbf{0}}$ unless the function detects an error (see Error Indicators and Warnings).

## Error Indicators and Warnings

Errors or warnings detected by the function:
${\mathbf{ifail}}=1$
 On entry, ${\mathbf{n}}\le {\mathbf{ip}}$, or ${\mathbf{ip}}<1$.
${\mathbf{ifail}}=2$
 On entry, the mean of the residuals was $\text{}>\sqrt{\epsilon }$, where .
${\mathbf{ifail}}=3$
 On entry, all residuals are identical.
${\mathbf{ifail}}=-99$
${\mathbf{ifail}}=-399$
Your licence key may have expired or may not have been installed correctly.
${\mathbf{ifail}}=-999$
Dynamic memory allocation failed.

## Accuracy

The probabilities are computed to an accuracy of at least $4$ decimal places.

If the exact probabilities are required, then the first $n-p$ eigenvalues of $HA$ can be computed and nag_stat_prob_chisq_lincomb (g01jd) used to compute the required probabilities with the argument c set to $0.0$ and the argument d set to the Durbin–Watson statistic $d$.

## Example

A set of $10$ residuals are read in and the Durbin–Watson statistic along with the probability bounds are computed and printed.
```function g02fc_example

fprintf('g02fc example results\n\n');

res = [ 3.735719   0.912755   0.683626   0.416693   1.990200 ...
-0.444816  -1.283088  -3.666035  -0.426357  -1.918697];

ip = int64(2);

% Calculate statistic
[d, pdl, pdu, ifail] = g02fc(ip, res);

% Display the results
fprintf(' Durbin-Watson statistic %10.4f\n\n', d);
fprintf(' Lower and upper bound   %10.4f%10.4f\n', pdl, pdu);

```
```g02fc example results

Durbin-Watson statistic     0.9238

Lower and upper bound       0.0610    0.0060
```