Learn R Programming

Runuran (version 0.34)

unuran.discr.new: Create a UNU.RAN discrete univariate distribution object

Description

Create a new UNU.RAN object for a discrete univariate distribution. The interface might be changed in future releases. Do not use unnamed arguments!

[Advanced] -- Discrete Distribution.

Usage

unuran.discr.new(cdf=NULL, pv=NULL, pmf=NULL, lb=NA, ub=NA,
                 mode=NA, sum=NA, name=NA)

Arguments

cdf

cumulative distribution function. (R function)

pv

probability vector. (numeric vector)

pmf

probability mass function. (R function)

mode

mode of distribution. (numeric, integer)

lb

lower bound of domain; use -Inf if unbounded from left. (numeric, integer)

ub

upper bound of domain; use Inf if unbounded from right; when pmf is not given, the default ub=Inf is used. (numeric, integer)

sum

sum over pv / pmf; used for computing normalization constants if required. (numeric)

name

name of distribution. (string)

Details

Creates an instance of class '>unuran.discr. For more details see also unuran.new.

The user is responsible that the given informations are consistent. It depends on the chosen method which information must be given / are used.

References

W. H\"ormann, J. Leydold, and G. Derflinger (2004): Automatic Nonuniform Random Variate Generation. Springer-Verlag, Berlin Heidelberg.

See Also

'>unuran.discr, unuran.new, '>unuran.

Examples

Run this code
# NOT RUN {
## Create a distribution object with given PV and mode
mypv <- dbinom(0:100,100,0.3)
distr <- new("unuran.discr", pv=mypv, lb=0, mode=30)

## Create discrete distribution with given probability vector
## (the PV need not be normalized)
pv <- c(1.,2.,1.5,0.,3.,1.2)     
dpv <- new("unuran.discr", pv=pv, lb=1)

## Create discrete distribution with given PMF
pmf <- function(x) dbinom(x,100,0.3)
dpmf <- new("unuran.discr", pmf=pmf, lb=0, ub=100)

# }

Run the code above in your browser using DataLab