Learn R Programming

VGAM (version 1.1-8)

Posgeom: Positive-Geometric Distribution

Description

Density, distribution function, quantile function and random generation for the positive-geometric distribution.

Usage

dposgeom(x, prob, log = FALSE)
pposgeom(q, prob)
qposgeom(p, prob)
rposgeom(n, prob)

Value

dposgeom gives the density,

pposgeom gives the distribution function,

qposgeom gives the quantile function, and

rposgeom generates random deviates.

Arguments

x, q

vector of quantiles.

p

vector of probabilities.

n

number of observations. Fed into runif.

prob

vector of probabilities of success (of an ordinary geometric distribution). Short vectors are recycled.

log

logical.

Author

T. W. Yee

Details

The positive-geometric distribution is a geometric distribution but with the probability of a zero being zero. The other probabilities are scaled to add to unity. The mean therefore is \(1/prob\).

As \(prob\) decreases, the positive-geometric and geometric distributions become more similar. Like similar functions for the geometric distribution, a zero value of prob is not permitted here.

See Also

zageometric, zigeometric, rgeom.

Examples

Run this code
prob <- 0.75; y <- rposgeom(n = 1000, prob)
table(y)
mean(y)  # Sample mean
1 / prob  # Population mean

(ii <- dposgeom(0:7, prob))
cumsum(ii) - pposgeom(0:7, prob)  # Should be 0s
table(rposgeom(100, prob))

table(qposgeom(runif(1000), prob))
round(dposgeom(1:10, prob) * 1000)  # Should be similar

if (FALSE) {
x <- 0:5
barplot(rbind(dposgeom(x, prob), dgeom(x, prob)),
        beside = TRUE, col = c("blue", "orange"),
        main = paste("Positive geometric(", prob, ") (blue) vs",
        " geometric(", prob, ") (orange)", sep = ""),
        names.arg = as.character(x), las = 1, lwd = 2) }

Run the code above in your browser using DataLab