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)

Purpose

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.

Syntax

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

Description

Calculates the Anderson–Darling test statistic A2A2 (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.

References

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)

Parameters

Compulsory Input Parameters

1:     issort – logical scalar
Set issort = trueissort=true if the observations are sorted in ascending order; otherwise the function will sort the observations.
2:     y(n) – double array
n, the dimension of the array, must satisfy the constraint n > 1n>1.
yiyi, for i = 1,2,,ni=1,2,,n, the nn observations.
Constraint: if issort = trueissort=true, the values must be sorted in ascending order. Each yiyi must lie in the interval (0,1)(0,1).

Optional Input Parameters

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

Input Parameters Omitted from the MATLAB Interface

None.

Output Parameters

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

Error Indicators and Warnings

Errors or warnings detected by the function:
  ifail = 1ifail=1
Constraint: n > 1n>1.
  ifail = 3ifail=3
issort = trueissort=true and the data in y is not sorted in ascending order.
  ifail = 9ifail=9
The data in y must lie in the interval (0,1)(0,1).

Accuracy

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

Further Comments

None.

Example

function nag_nonpar_gofstat_anddar_unif_example
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;
% PIT
y = 1 - exp(-x/mu);
% Let nag_nonpar_gofstat_anddar_unif sort the uniform variates
issort = false;

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

% Results
fprintf('\nH0: 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);
 

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

function g08cj_example
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;
% PIT
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('\nH0: 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);
 

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–2013