Learn R Programming

DistributionUtils (version 0.6-1)

distIneqMassartPlot: Massart Inequality Plot Function

Description

Creates a Massart inequality plot for testing the empirical distribution and distribution function based on an inequality due to Massart (1990).

Usage

distIneqMassartPlot(densFn = "norm", param = NULL,
                    nSamp = 50, n = 100, ...)

Value

Returns NULL invisibly.

Arguments

densFn

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

n

Numeric. The size of the sample to be used.

nSamp

Numeric. The number of samples used to approximate the LHS probability of the inequality.

param

Numeric. A vector giving the parameter values for the distribution specified by densFn. If no param values are specified, then the default parameter values of each distribution are used instead.

...

Passes the parameters of the distribution other than specified by param.

Author

David Scott d.scott@auckland.ac.nz, Xinxing Li xli053@aucklanduni.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\).

The red curve in the plot shows the LHS probabilities and the black curve gives the RHS bound. The red curve should lie below the black curve in order that the empirical distribution represents a sample from the theoretical distribution.

References

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

Examples

Run this code
if (FALSE) {
### Not run because of timing requirements of CRAN
### The Massart Inequality plot for standard Normal Distribution
distIneqMassartPlot()

### The Massart Inequality plot for Gamma Distribution
distIneqMassartPlot("gamma", shape = 1)
}

Run the code above in your browser using DataLab