Learn R Programming

DistributionUtils (version 0.6-1)

distIneqMassart: Massart Inequality for Distributions

Description

This function implements a test of the random number generator and distribution function based on an inequality due to Massart (1990).

Usage

distIneqMassart(densFn = "norm", n = 10000, probBound = 0.001, ...)

Value

sup

Numeric. The supremum of the absolute difference between the empirical distribution and the true distribution function.

probBound

Numeric. The value of the bound on the right hand side of the Massart inequality.

t

Numeric. The lower bound which the supremum of the absolute difference between the empirical distribution and the true distribution function must exceed.

pVal

Numeric. The probability that the absolute difference between the empirical distribution and the true distribution function exceeds t.

check

Logical. Indicates whether the inequality is satisfied or not.

Arguments

densFn

Character. The root name of the distribution to be tested.

n

Numeric. The size of the sample to be used.

probBound

Numeric. The value of the bound on the right hand side of the Massart inequality. See Details.

...

Additional arguments to allow specification of the parameters of the distribution.

Author

David Scott d.scott@auckland.ac.nz, Christine Yang Dong c.dong@auckland.ac.nz

Details

Massart (1990) gave a version of the Dvoretsky-Kiefer-Wolfowitz inequality with the best possible constant:

$$P\left(\sup_{x}|\hat F_n(x)-F(x)|> t\right) \leq% 2\exp(-2nt^2)$$

where \(\hat F_n\) is the empirical distribution function for a sample of \(n\) independent and identically distributed random variables with distribution function \(F\). This inequality is true for all distribution functions, for all \(n\) and \(t\).

This test is used in base R to check the standard distribution functions. The code may be found in the file p-r-random.tests.R in the tests directory.

References

Massart P. (1990) The tight constant in the Dvoretsky-Kiefer-Wolfovitz inequality. Ann. Probab., 18, 1269--1283.

Examples

Run this code
## Normal distribution is the default
distIneqMassart()
## Specify parameter values
distIneqMassart(mean = 1, sd = 2)
## Gamma distribution has no default value for shape
distIneqMassart("gamma", shape = 1)

Run the code above in your browser using DataLab