dposbinom(x, size, prob, log = FALSE)
pposbinom(q, size, prob, lower.tail = TRUE, log.p = FALSE)
qposbinom(p, size, prob, lower.tail = TRUE, log.p = FALSE)
rposbinom(n, size, prob)
length(n) > 1
then the length is taken to be the number required.posbinomial
.pbinom
etc.dposbinom
gives the density,
pposbinom
gives the distribution function,
qposbinom
gives the quantile function, and
rposbinom
generates random deviates.prob
above.
As $\mu$ increases, the positive-binomial and binomial
distributions become more similar.
Unlike similar functions for the binomial distribution, a zero value
of prob
is not permitted here.posbinomial
,
rbinom
.prob = 0.2; size = 10
y = rposbinom(n=1000, size, prob)
table(y)
mean(y) # Sample mean
prob / (1-(1-prob)^size) # Population mean
(ii = dposbinom(0:size, size, prob))
cumsum(ii) - pposbinom(0:size, size, prob) # Should be 0s
table(rposbinom(100, size, prob))
table(qposbinom(runif(1000), size, prob))
round(dposbinom(1:10, size, prob) * 1000) # Should be similar
barplot(rbind(dposbinom(x = 0:size, size, prob),
dbinom(x = 0:size, size, prob)),
beside = TRUE, col = c("blue","green"),
main=paste("Positive-binomial(", size, ",", prob, ") (blue) vs",
" Binomial(", size, ",", prob, ") (green)", sep=""),
names.arg = as.character(0:size), las=1)
Run the code above in your browser using DataLab