AKS1DF

This function evaluates the cumulative distribution function of the one‑sided Kolmogorov‑Smirnov goodness of fit D+ or D test statistic based on continuous data for one sample.

Function Return Value

AKS1DF — The probability of a smaller D. (Output)

Required Arguments

NOBS — The total number of observations in the sample. (Input)

D — The D+ or D test statistic. (Input)
D is the maximum positive difference of the empirical cumulative distribution function (CDF) minus the hypothetical CDF or the maximum positive difference of the hypothetical CDF minus the empirical CDF.

FORTRAN 90 Interface

Generic: AKS1DF (NOBS, D)

Specific: The specific interface names are S_AKS1DF and D_AKS1DF.

FORTRAN 77 Interface

Single: AKS1DF (NOBS, D)

Double: The double precision name is DKS1DF.

Description

Routine AKS1DF computes the cumulative distribution function (CDF) for the one‑sided Kolmogorov‑Smirnov one‑sample

D+ or D-

statistic when the theoretical CDF is strictly continuous. Let

F(x)

denote the theoretical distribution function, and let

 

denote the empirical distribution function obtained from a sample of size NOBS. Then, the

D+

statistic is computed as

 

while the one‑sided

D-

statistic is computed as

 

Exact probabilities are computed according to a method given by Conover (1980, page 350) for sample sizes of 80 or less. For sample sizes greater than 80, Smirnov’s asymptotic result is used, that is, the value of the CDF is taken as , where d is D+ or D (Kendall and Stuart, 1979, page 482). This asymptotic expression is conservative (the value returned by AKS1DF is smaller than the exact value, when the sample size exceeds 80).

Comments

1. Workspace may be explicitly provided, if desired, by use of AK21DF/DK21DF. The reference is:

AK2DF (NOBS, D, WK)

The additional argument is:

WK — Work vector of length 3 * NOBS + 3 if NOBS  80. WK is not used if NOBS is greater than 80.

2. Informational errors

 

Type

Code

Description

1

2

Since the D test statistic is less than zero, the distribution function is zero at D.

1

3

Since the D test statistic is greater than one, the distribution function is one at D.

3. If NOBS  80, then exact one‑sided probabilities are computed. In this case, on the order of NOBS2 operations are required. For NOBS > 80, approximate one‑sided probabilities are computed. These approximate probabilities require very few computations.

4. An approximate two‑sided probability for the D = max (D+D) statistic can be computed as twice the AKS1DF probability for D (minus one, if the probability from AKS1DF is greater than 0.5).

Programming Notes

Routine AKS1DF requires on the order of NOBS2 operations to compute the exact probabilities, where an operation consists of taking ten or so logarithms. Because so much computation is occurring within each “operation,” AKS1DF is much slower than its two‑sample counterpart, function AKS2DF.

Example

In this example, the exact one‑sided probabilities for the tabled values of D+ or D, given, for example, in Conover (1980, page 462), are computed. Tabled values at the 10% level of significance are used as input to AKS1DF for sample sizes of 5 to 50 in increments of 5 (the last two tabled values are obtained using the asymptotic critical values of

 

The resulting probabilities should all be close to 0.90.

 

USE UMACH_INT

USE AKS1DF_INT

IMPLICIT NONE

INTEGER I, NOBS, NOUT

REAL D(10)

!

DATA D/0.447, 0.323, 0.266, 0.232, 0.208, 0.190, 0.177, 0.165, &

0.160, 0.151/

!

CALL UMACH (2, NOUT)

!

DO 10 I=1, 10

NOBS = 5*I

!

WRITE (NOUT,99999) D(I), NOBS, AKS1DF(NOBS,D(I))

!

99999 FORMAT (' One-sided Probability for D = ', F8.3, ' with NOBS ' &

, '= ', I2, ' is ', F8.4)

10 CONTINUE

END

Output

 

One-sided Probability for D = 0.447 with NOBS = 5 is 0.9000

One-sided Probability for D = 0.323 with NOBS = 10 is 0.9006

One-sided Probability for D = 0.266 with NOBS = 15 is 0.9002

One-sided Probability for D = 0.232 with NOBS = 20 is 0.9009

One-sided Probability for D = 0.208 with NOBS = 25 is 0.9002

One-sided Probability for D = 0.190 with NOBS = 30 is 0.8992

One-sided Probability for D = 0.177 with NOBS = 35 is 0.9011

One-sided Probability for D = 0.165 with NOBS = 40 is 0.8987

One-sided Probability for D = 0.160 with NOBS = 45 is 0.9105

One-sided Probability for D = 0.151 with NOBS = 50 is 0.9077