logseries | 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.
These functions provide the density, distribution function, quantile function and
random generation for the
logarithmic series distribution with parameter prob
.
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 |
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 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.