NAG Library Function Document
nag_normal_scores_var (g01dcc)
1
Purpose
nag_normal_scores_var (g01dcc) computes an approximation to the variance-covariance matrix of an ordered set of independent observations from a Normal distribution with mean and standard deviation .
2
Specification
#include <nag.h> |
#include <nagg01.h> |
|
3
Description
nag_normal_scores_var (g01dcc) is an adaptation of the Applied Statistics Algorithm AS 128, see
Davis and Stephens (1978). An approximation to the variance-covariance matrix,
, using a Taylor series expansion of the Normal distribution function is discussed in
David and Johnson (1954).
However, convergence is slow for extreme variances and covariances. The present function uses the David–Johnson approximation to provide an initial approximation and improves upon it by use of the following identities for the matrix.
For a sample of size
, let
be the expected value of the
th largest order statistic, then:
(a) |
for any , |
(b) |
|
(c) |
the trace of is |
(d) |
where , and . Note that only the upper triangle of the matrix is calculated and returned column-wise in vector form. |
4
References
David F N and Johnson N L (1954) Statistical treatment of censored data, Part 1. Fundamental formulae Biometrika 41 228–240
Davis C S and Stephens M A (1978) Algorithm AS 128: approximating the covariance matrix of Normal order statistics Appl. Statist. 27 206–212
5
Arguments
- 1:
– IntegerInput
-
On entry: , the sample size.
Constraint:
.
- 2:
– doubleInput
-
On entry: the expected value of the largest Normal order statistic, , from a sample of size .
- 3:
– doubleInput
-
On entry: the expected value of the second largest Normal order statistic, , from a sample of size .
- 4:
– doubleInput
-
On entry: the sum of squares of the expected values of the Normal order statistics from a sample of size .
- 5:
– doubleOutput
-
On exit: the upper triangle of the by variance-covariance matrix packed by column. Thus element is stored in , for .
- 6:
– NagError *Input/Output
-
The NAG error argument (see
Section 3.7 in How to Use the NAG Library and its Documentation).
6
Error Indicators and Warnings
- NE_ALLOC_FAIL
-
Dynamic memory allocation failed.
See
Section 2.3.1.2 in How to Use the NAG Library and its Documentation for further information.
- NE_BAD_PARAM
-
On entry, argument had an illegal value.
- NE_INT
-
On entry, .
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.
See
Section 2.7.6 in How to Use the NAG Library and its Documentation for further information.
- NE_NO_LICENCE
-
Your licence key may have expired or may not have been installed correctly.
See
Section 2.7.5 in How to Use the NAG Library and its Documentation for further information.
7
Accuracy
For , where comparison with the exact values can be made, the maximum error is less than .
8
Parallelism and Performance
nag_normal_scores_var (g01dcc) is not threaded in any implementation.
The time taken by nag_normal_scores_var (g01dcc) is approximately proportional to .
The arguments
(
),
(
) and
(
) may be found from the expected values of the Normal order statistics obtained from
nag_normal_scores_exact (g01dac)
.
10
Example
A program to compute the variance-covariance matrix for a sample of size
.
nag_normal_scores_exact (g01dac) is called to provide values for
exp1,
exp2 and
sumssq.
10.1
Program Text
Program Text (g01dcce.c)
10.2
Program Data
None.
10.3
Program Results
Program Results (g01dcce.r)