hide long namesshow long names
hide short namesshow short names
Integer type:  int32  int64  nag_int  show int32  show int32  show int64  show int64  show nag_int  show nag_int

PDF version (NAG web site, 64-bit version, 64-bit version)
Chapter Contents
Chapter Introduction
NAG Toolbox

NAG Toolbox: nag_nonpar_gofstat_anddar_unif (g08cj)


    1  Purpose
    2  Syntax
    7  Accuracy
    9  Example


nag_nonpar_gofstat_anddar_unif (g08cj) calculates the Anderson–Darling goodness-of-fit test statistic and its probability for the case of standard uniformly distributed data.


[y, a2, p, ifail] = g08cj(issort, y, 'n', n)
[y, a2, p, ifail] = nag_nonpar_gofstat_anddar_unif(issort, y, 'n', n)


Calculates the Anderson–Darling test statistic A2 (see nag_nonpar_gofstat_anddar (g08ch)) and its upper tail probability by using the approximation method of Marsaglia and Marsaglia (2004) for the case of uniformly distributed data.


Anderson T W and Darling D A (1952) Asymptotic theory of certain ‘goodness-of-fit’ criteria based on stochastic processes Annals of Mathematical Statistics 23 193–212
Marsaglia G and Marsaglia J (2004) Evaluating the Anderson–Darling distribution J. Statist. Software 9(2)


Compulsory Input Parameters

1:     issort – logical scalar
Set issort=true if the observations are sorted in ascending order; otherwise the function will sort the observations.
2:     yn – double array
yi, for i=1,2,,n, the n observations.
Constraint: if issort=true, the values must be sorted in ascending order. Each yi must lie in the interval 0,1.

Optional Input Parameters

1:     n int64int32nag_int scalar
Default: the dimension of the array y.
n, the number of observations.
Constraint: n>1.

Output Parameters

1:     yn – double array
If issort=false, the data sorted in ascending order; otherwise the array is unchanged.
2:     a2 – double scalar
A2, the Anderson–Darling test statistic.
3:     p – double scalar
p, the upper tail probability for A2.
4:     ifail int64int32nag_int scalar
ifail=0 unless the function detects an error (see Error Indicators and Warnings).

Error Indicators and Warnings

Errors or warnings detected by the function:
Constraint: n>1.
issort=true and the data in y is not sorted in ascending order.
The data in y must lie in the interval 0,1.
An unexpected error has been triggered by this routine. Please contact NAG.
Your licence key may have expired or may not have been installed correctly.
Dynamic memory allocation failed.


Probabilities greater than approximately 0.09 are accurate to five decimal places; lower value probabilities are accurate to six decimal places.

Further Comments



This example calculates the A2 statistic and its p-value for uniform data obtained by transforming exponential variates.
function g08cj_example

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

x = [0.4782745, 1.2858962, 1.1163891, 2.0410619, 2.2648109, 0.0833660, ...
     1.2527554, 0.4031288, 0.7808981, 0.1977674, 3.2539440, 1.8113504, ...
     1.2279834, 3.9178773, 1.4494309, 0.1358438, 1.8061778, 6.0441929, ...
     0.9671624, 3.2035042, 0.8067364, 0.4179364, 3.5351774, 0.3975414, ...
     0.6120960, 0.1332589];
mu = 1.65;
y = 1 - exp(-x/mu);
% Let g08cj sort the uniform variates
issort = false;

% Calculate a-squared and probability
[y, a2, p, ifail] = g08cj( ...
                           issort, y);

% Results
fprintf('H0: data from exponential distribution with mean %10.4e\n', mu);
fprintf('Test statistic, A-squared: %8.4f\n', a2);
fprintf('Upper tail probability:    %8.4f\n', p);

g08cj example results

H0: data from exponential distribution with mean 1.6500e+00
Test statistic, A-squared:   0.1830
Upper tail probability:      0.9945

PDF version (NAG web site, 64-bit version, 64-bit version)
Chapter Contents
Chapter Introduction
NAG Toolbox

© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015