| dlogseries | R Documentation |
The logarithmic series distribution is a long-tailed distribution introduced by Fisher etal. (1943) in connection with data on the abundance of individuals classified by species.
dlogseries(x, prob = 0.5, log = FALSE)
plogseries(q, prob = 0.5, lower.tail = TRUE, log.p = FALSE)
qlogseries(p, prob = 0.5, lower.tail = TRUE, log.p = FALSE, max.value = 10000)
rlogseries(n, prob = 0.5)
x, q |
vector of quantiles representing the number of events. |
prob |
parameter for the distribution, |
log, log.p |
logical; if TRUE, probabilities |
lower.tail |
logical; if TRUE (default), probabilities are |
p |
vector of probabilities |
max.value |
maximum value returned by |
n |
number of observations for |
These functions provide the density, distribution function, quantile
function and random generation for the logarithmic series distribution with
parameter prob.
The logarithmic series distribution with prob = p has density
p ( x ) = \alpha p^x / x
for x = 1, 2, \dots,
where
\alpha= -1 / \log(1 - p) and 0 < p < 1.
% Note that counts x==2 cannot occur.
dlogseries gives the density,
plogseries gives the cumulative distribution function,
qlogseries gives the quantile function, and
rlogseries generates random deviates.
Michael Friendly, using original code modified from the
gmlss.dist package by Mikis Stasinopoulos.
https://en.wikipedia.org/wiki/Logarithmic_distribution
Fisher, R. A. and Corbet, A. S. and Williams, C. B. (1943). The relation between the number of species and the number of individuals Journal of Animal Ecology, 12, 42-58.
Distributions
XL <-expand.grid(x=1:5, p=c(0.33, 0.66, 0.99))
lgs.df <- data.frame(XL, prob=dlogseries(XL[,"x"], XL[,"p"]))
lgs.df$p = factor(lgs.df$p)
str(lgs.df)
require(lattice)
mycol <- palette()[2:4]
xyplot( prob ~ x, data=lgs.df, groups=p,
xlab=list('Number of events (k)', cex=1.25),
ylab=list('Probability', cex=1.25),
type='b', pch=15:17, lwd=2, cex=1.25, col=mycol,
key = list(
title = 'p',
points = list(pch=15:17, col=mycol, cex=1.25),
lines = list(lwd=2, col=mycol),
text = list(levels(lgs.df$p)),
x=0.9, y=0.98, corner=c(x=1, y=1)
)
)
# random numbers
hist(rlogseries(200, prob=.4), xlab='x')
hist(rlogseries(200, prob=.8), xlab='x')
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.