Maintainer: | Christophe Dutang, Patrice Kiener, Bruce J. Swihart |
Contact: | dutangc at gmail.com |
Version: | 2024-10-25 |
URL: | https://CRAN.R-project.org/view=Distributions |
Source: | https://github.com/cran-task-views/Distributions/ |
Contributions: | Suggestions and improvements for this task view are very welcome and can be made through issues or pull requests on GitHub or via e-mail to the maintainer address. For further details see the Contributing guide. |
Citation: | Christophe Dutang, Patrice Kiener, Bruce J. Swihart (2024). CRAN Task View: Probability Distributions. Version 2024-10-25. URL https://CRAN.R-project.org/view=Distributions. |
Installation: | The packages from this task view can be installed automatically using the ctv package. For example, ctv::install.views("Distributions", coreOnly = TRUE) installs all the core packages or ctv::update.views("Distributions") installs all packages that are not yet installed and up-to-date. See the CRAN Task View Initiative for more details. |
For most of the classical distributions, base R provides probability distribution functions (p), density functions (d), quantile functions (q), and random number generation (r). Beyond this basic functionality, many CRAN packages provide additional useful distributions. In particular, multivariate distributions as well as copulas are available in contributed packages.
The maintainers gratefully acknowledge Achim Zeileis, David Luethi, Tobias Verbeke, Robin Hankin, Mathias Kohl, G. Jay Kerns, Kjetil Halvorsen, William Asquith for their useful comments/suggestions. If you think information is not accurate or not complete, please send an e-mail to the maintainer or submit an issue or pull request in the GitHub repository linked above.
p
foo()
density functions d
foo()
, quantile functions q
foo()
, and random number generation r
foo()
where foo indicates the type of distribution: beta (foo = beta
), binomial binom
, Cauchy cauchy
, chi-squared chisq
, exponential exp
, Fisher F f
, gamma gamma
, geometric geom
, hypergeometric hyper
, logistic logis
, lognormal lnorm
, negative binomial nbinom
, normal norm
, Poisson pois
, Student t t
, uniform unif
, Weibull weibull
. Following the same naming scheme, but somewhat less standard are the following distributions in base R: probabilities of coincidences (also known as “birthday paradox”) birthday
(only p and q), studentized range distribution tukey
(only p and q), Wilcoxon signed rank distribution signrank
, Wilcoxon rank sum distribution wilcox
.ks.test
, shapiro.test
, ansari.test
, chisq.test
, poisson.test
. Ecume provides non-parametric two-sample (or k-sample) distribution comparisons in the univariate or multivariate case allowing observation weights and thresholds.Some packages may optionally provide the symbolic derivatives with respect to the parameters for the probability functions. For instance, the first and second derivatives of the log-density can be of some help in estimation and inference tasks, and the derivatives of the quantile function can help when inferring on a given quantile. For that purpose, the following base R functions can be used stats::D()
for derivatives w.r.t. a single parameter, or stats::deriv()
for (partial) derivatives w.r.t. multiple parameters. The Deriv package provides a much more flexible symbolic differentiation interface. One can also use Stan Math library through StanHeaders package, see e.g. this blog. The nieve package provides symbolic differentiation for two probability distribution (Generalized Pareto and Generalized Extreme Value) in order to compute the log-likelihood for example.
Beta-binomial distribution: provided in VGAM, extraDistr, rmutil, emdbook. ZI/ZM beta binomial distributions are implemented in gamlss.dist. For a continuous analog with d, p, q, r functions, see cbbinom.
Beta-geometric distribution: provided in VGAM.
Binomial (including Bernoulli) distribution: provided in stats. Zero-modified, zero-inflated, truncated versions are provided in gamlss.dist, extraDistr, actuar and in VGAM. LaplacesDemon provides dedicated functions for the Bernoulli distribution. rmutil provides the double binomial and the multiplicative binomial distributions.
Distribution name | Packages | Functions | Distribution suffix |
binomial | stats | d , p , q , r |
binom |
zero-infl. binomial | extraDistr | d , p , q , r |
zib |
zero-infl. binomial | VGAM | d , p , q , r |
zibinom |
zero-infl. binomial | gamlss.dist | d , p , q , r |
ZIBI |
zero mod. binomial | VGAM | d , p , q , r |
zabinom |
zero mod. binomial | actuar | d , p , q , r |
zmbinom |
zero mod. binomial | gamlss.dist | d , p , q , r |
ZABI |
zero trunc. binomial | actuar | d , p , q , r |
ztbinom |
trunc. binomial | extraDistr | d , p , q , r |
tbinom |
Bell Touchard distribution: standard and zero-inflated provided in countDM.
Benford distribution: provided in VGAM and BenfordTests.
Bernoulli distribution: provided in extraDistr.
Borel-Tanner distribution: provided in VGAM.
Delaporte distribution: provided in gamlss.dist and Delaporte.
Dirac distribution: provided in distr.
Discrete Burr-Hatke distribution: DiscreteDists provides d, p, q, r functions.
Discrete categorical distribution: provided in LaplacesDemon.
Discrete Cauchy (Cauchy-Cacoullos) distribution: provided in CCd.
Discrete exponential distribution: provided in poweRlaw. A generalized version of the second type is in DiscreteDists.
Discrete gamma distribution: provided in extraDistr.
Discrete inverted Kumaraswamy distribution: DiscreteDists provides d, p, q, r functions.
Discrete inverse Weibull distribution: DiscreteInverseWeibull provides d, p, q, r functions for the inverse Weibull as well as hazard rate function and moments.
Discrete Laplace distribution: The discrete Laplace distribution is provided in extraDistr (d, p, r). The skew discrete Laplace distribution has two parametrization (DSL and ADSL), both provided in DiscreteLaplace and DSL in disclap. LaplacesDemon also provides the DSL parametrization only.
Discrete Lindley distribution: DiscreteDists provides d, p, q, r functions.
Discrete lognormal distribution: provided in poweRlaw.
Discrete Marshall–Olkin Length Biased Exponential distribution: DiscreteDists provides d, p, q, r functions.
Discrete normal distribution: provided in extraDistr.
Discrete power law distribution: provided in poweRlaw.
Discrete uniform distribution: can be easily obtained with the functions sum,cumsum,sample
and is provided in extraDistr.
Discrete Weibull distribution: provided in DiscreteWeibull: d, p, q, r, m for disc. Weib. type 1, d, p, q, r, m, h for disc. Weib. type 3. extraDistr provides d, p, q, r for Type 1.
Felix distribution: provided in VGAM.
gamma count distribution: provided in rmutil.
Geometric distribution: provided in stats . Zero-modified, zero-inflated, truncated versions are provided in gamlss.dist, actuar and in VGAM. The time-varying geometric is provided in tvgeom.
Geometric (compound) Poisson distribution (also known Polya-Aeppli distribution): provided in polyaAeppli. Uniform-geometric distribution provided in new.dist.
Generalized/fractional binomial distribution: GenBinomApps provides the generalized binomial distribution. frbinom provides the fractional binomial distribution where trials are from a generlized Bernoulli process.
Generalized Geometric distribution: provided in DiscreteDists.
Generalized Hermite distribution: provided in hermite.
Good distribution: provided in good (archived).
Hyper-Poisson distribution: provided in DiscreteDists.
Hypergeometric distribution: provided in stats . Non-central hypergeometric distribution is provided in MCMCpack (d,r). Extended hypergeometric distribution can be found in BiasedUrn package, which provides not only p, d, q, r functions but also mean, variance, mode functions. Generalized hypergeometric distribution is implemented in SuppDists. Negative hypergeometric distribution is provided in tolerance, extraDistr.
Lagrangian Poisson distribution: RMKdiscrete provides d, p, q, r functions for the univariate and the bivariate Lagrangian Poisson distribution.
Lindley’s power series distribution: provided in LindleyPowerSeries and in new.dist.
Logarithmic distribution: This can be found in extraDistr, VGAM, actuar, and gamlss.dist. Zero-modified and zero-truncated versions is provided in actuar. A fast random generator is available for the logarithmic distribution is implemented in Runuran as well as the ‘density’ function.
Poisson distribution: provided in stats and in poweRlaw. Zero-modified, zero-inflated, truncated versions are provided in extraDistr, gamlss.dist, actuar and in VGAM. extraDistr provides the truncated Poisson distribution. LaplacesDemon provides the generalized Poisson distribution. rmutil provides the double Poisson, the multiplicative Poisson and the Power variance function Poisson distributions. poibin and PoissonBinomial provide the Poisson binomial distribution. See the mixture section such as the Poisson-lognormal mixture.
Poisson-Lindley distribution: provided in tolerance.
Power law distribution: provided in poweRlaw.
Mana Clash distribution: provided in RMKdiscrete.
Negative binomial distribution: provided in stats . Zero-modified, zero-inflated, truncated versions are provided in gamlss.dist, extraDistr, emdbook, actuar and in VGAM. New parametrization of the negative binomial distribution is available in RMKdiscrete. nbconv provides p, q, r functions for convolutions of negative binomial distributions.
Sichel distribution: provided in gamlss.dist.
Skellam distribution: provided in extraDistr, VGAM and skellam.
Waring distribution: degreenet provides a random generator, cpd provides d, p, q, r functions for extended biparametric Waring.
Yule-Simon distribution: provided in VGAM and sampling in degreenet.
Zeta and Haight’s Zeta distribution: provided in VGAM, tolerance.
Zipf distribution and extensions: d, p, q, r functions of the Zipf and the Zipf-Mandelbrot distributions are provided in tolerance, VGAM. Package zipfR provides tools for distribution of word frequency, such as the Zipf distribution. zipfextR provides three extensions of the Zipf distribution: the Marshall-Olkin Extended Zipf, the Zipf-Poisson Extreme and the Zipf-Poisson Stopped Sum distributions.
Arcsine distribution: implemented in package distr.
Argus distribution: implemented in package argus.
Beta distribution and its extensions: Base R provides the d, p, q, r functions for this distribution (see above). extraDistr provides the beta distribution parametrized by the mean and the precision. actuar provides moments and limited expected values. sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for doubly non central beta distribution for computing d, p, q, r functions. extraDistr provides the four-parameter beta with lower and upper bounds. The generalized beta of the first kind (GB1) (exponentiation of beta 1) is provided in gamlss.dist, mbbefd, actuar. betafunctions provides the four-parameter beta (that is with location and scale parameters), the beta parametrized by the mean and the variance as well as the beta compound beta distribution. The beta prime (or beta of the second kind), which is the distribution of X/(1-X) when X follows a beta distribution of the first kind, is provided in VGAM, extraDistr, LaplacesDemon and mc2d. The zero and one inflated beta distribution can be found in gamlss.dist. The generalized beta of the second kind (GB2) is provided in gamlss.dist, GB2. Several special cases of the generalized beta distribution are also implemented in VGAM, mc2d: Lomax, inverse Lomax, Dagum, Singh-Maddala, Pert distributions. actuar provides the Feller-Pareto distribution with special cases Burr, log-logistic, paralogistic, generalized Pareto, Pareto, see also the Pareto subsection.
Distribution name | Packages | Functions | Distribution suffix |
Beta (1st kind) | stats | d, p, q, r | beta |
Beta | actuar | m, mgf, lev | beta |
Beta | betafunctions | d, p, q, r | Beta.4P |
Doubly non central beta | sadists | d, p, q, r | nbeta |
4-param beta | extraDistr | d, p, q, r | nsbeta |
zero-infl beta | gamlss.dist | d, p, q, r | BEZI |
one-infl beta | gamlss.dist | d, p, q, r | BEOI |
one-infl beta | mbbefd | d, p, q, r, m, ec | oibeta |
GB1 | gamlss.dist | d, p, q, r | GB1 |
GB1 | mbbefd | d, p, q, r, m, ec | gbeta |
GB1 | actuar | d, p, q, r, m, lev | genbeta |
one-infl GB1 | mbbefd | d, p, q, r, m, ec | oigbeta |
Distribution name | Packages | Functions | Distribution suffix |
Beta (2nd kind) | VGAM | d, p, q, r | beta |
Beta (2nd kind) | extraDistr | d, p, q, r | invbeta |
Beta (2nd kind) | LaplacesDemon | d, r | betapr |
GB2 | VGAM | d, p, q, r | genbetaII |
GB2 | gamlss.dist | d, p, q, r | GB2 |
GB2 | GB2 | d, p, q, r | gb2 |
Trans beta 2 | actuar | d, p, q, r, m, lev | trbeta |
Bell-G distribution: BGFD provides d, p, q, r functions for Bell exponential, Bell extended exponential, Bell Weibull, Bell extended Weibull, Bell-Fisk, Bell-Lomax, Bell Burr-XII, Bell Burr-X, complementary Bell exponential, complementary Bell extended exponential, complementary Bell Weibull, complementary Bell extended Weibull, complementary Bell-Fisk, complementary Bell-Lomax, complementary Bell Burr-XII and complementary Bell Burr-X distribution.
The package also provides hazard function and an estimation procedure.
Benini distribution: provided in VGAM.
Bezier-Montenegro-Torres distribution: provided in BMT.
Bhattacharjee (normal+uniform) distribution: provided in package extraDistr.
Birnbaum-Saunders distribution: provided in bsgof, extraDistr, VGAM.
Bridge distribution: provided in bridgedist, as detailed in Wang and Louis (2003). The distribution of random intercept that allows a marginalized random intercept logistic regression to also be logistic regression.
Box Cox distribution: gamlss.dist provides the Box-Cox normal, the Box-Cox power exponential and the Box-Cox t distributions. rmutil provides the Box-Cox normal.
Burr distribution: see Pareto.
Cardioid distribution: provided in VGAM (d,p,q,r) and CircStats, circular (d,r).
Carthwrite’s Power-of-Cosine distribution: provided in circular (d,r).
Cauchy distribution: Base R provides the d, p, q, r functions for this distribution (see above). Other implementations are available in lmomco and sgt. The skew Cauchy distribution is provided in sn. LaplacesDemon provides d, p, q, r functions for the Half-Cauchy distribution. The wrapped Cauchy distribution is provided in CircStats.
Chen distribution: a special case of the Extended Chen-Poisson Lifetime Distribution as found in ecpdist.
Chernoff distribution: ChernoffDist provides d, p, q functions of the distribution of the maximizer of the two-sided Brownian motion minus quadratic drift, known as Chernoff’s distribution.
Chi(-squared or not) distribution: Base R provides the d, p, q, r functions for the chi-squared distribution, both central and non-central (see above). Moments, limited expected values and the moment generating function are provided in actuar. extraDistr provides d, p, q, r functions for inverse chi-squared distribution (standard and scaled). Only d,r functions are available for the inverse chi-squared distribution in package LaplacesDemon. A fast random generator is available for the Chi distribution is implemented in Runuran as well as the density function. The non-central Chi distribution is not yet implemented. The chi-bar-squared distribution is implemented in emdbook. sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for sums of non central chi-squared raised to powers distribution and sums of log of non central chi-squared for computing d, p, q, r functions.
Distribution name | Packages | Functions | Distribution suffix |
Chi-squared | stats | d, p, q, r | chisq |
Chi-squared | actuar | m, mgf, lev | chisq |
Chi-squared | Runuran | d, r | chisq |
Chi-bar-squared | emdbook | d, p, q, r | chibarsq |
Chi | Runuran | d, r | chi |
Inverse Chi-squared | extraDistr | d, p, q, r | invchisq |
Scaled Inverse Chi-squared | extraDistr | d, p, q, r | invchisq |
Sum of power Chi-squared | sadists | d, p, q, r | sumchisqpow |
Sum of log Chi-squared | sadists | d, p, q, r | sumlogchisq |
Circular distribution: uniform circular provided in circular (d,r); Generalized von Mises circular provided in circular (d).
Consul distribution: see rmutil.
Continuous binomial distribution: cbinom provides the d/p/q/r functions for a continuous analog to the standard discrete binomial with continuous size parameter and continuous support with x in [0, size + 1].
Dagum distribution: see beta. the power log Dagum provided in new.dist.
Davies distribution: The Davies distribution is provided in Davies package.
(non-central) Dunnett’s test distribution: no longer provided.
Eta-mu distribution: provided in lmomco. sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for doubly non central eta distribution for computing d, p, q, r functions.
Exponential distribution and its extensions: Base R provides the d, p, q, r functions for this distribution (see above). actuar provides additional functions such as the moment generating function, moments and limited expected values. It also has the d, p, q, r for the inverse exponential distribution. The shifted (or two-parameter exponential) and the truncated exponential distributions are implemented in lmomco and tolerance packages with d, p, q, r functions. Exponential Power distribution is also known as General Error Distribution: d, p, q, r functions for the power and the skew power exponential type 1-4 distributions are implemented in gamlss.dist and lmomco. The power exponential distribution is also provided in normalp, rmutil, LaplacesDemon. The skew power exponential is provided mixSPE. A fast random generator is available for the power Exponential distribution is implemented in Runuran as well as the density function. AEP implements the Asymmetric Exponential Power Distribution.
Distribution name | Packages | Functions | Distribution suffix |
Exponential | stats | d, p, q, r | exp |
Exponential | actuar | m, mgf, lev | exp |
Exponential | gamlss.dist | d, p, q, r | EXP |
Exponential | poweRlaw | d, p, q, r | exp |
Inverse exponential | actuar | d, p, q, r, m, lev | invexp |
Shifted exponential | lmomco | d, p, q, r, lm, tlmr | exp |
Shifted exponential | tolerance | d, p, q, r | 2exp |
Truncated exponential | lmomco | d, p, q, r, lm, tlmr | texp |
Truncated exponential | ReIns | d, p, q, r | texp |
Power exponential | normalp | d, p, q, r | normp |
Power exponential | Runuran | d, r | exp |
Power exponential | rmutil | d, r | powexp |
Power exponential | LaplacesDemon | d, p, q, r | pe |
Skew power exp. | lmomco | d, p, q, r, lm, tlmr | aep4 |
Power and skew power exp. | mixSPE | r | pe, spe |
Power and skew power exp. | gamlss.dist | d, p, q, r | PE, SEP |
Externally studentized midrange distribution: Package SMR computes the studentized midrange distribution (d, p, q, r).
Fisher-Snedecor (or F) distribution: Base R provides the d, p, q, r functions for the F distribution, possibly with a non-central parameter. sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for doubly non central Fisher distribution (and product of multiple doubly non central Fisher distribution) for computing d, p, q, r functions. flexsurv provides d, p, q, r functions as well as hazard (h) and integrated hazard rate (i) functions for the generalized F distribution. fpow returns the noncentrality parameter of the noncentral F distribution if probability of type I and type II error, degrees of freedom of the numerator and the denominator are given.
Frechet distribution: provided in VGAM, RTDE, ReIns, extraDistr, distributionsrd and evd. A fast random generator is available for the Frechet distribution is implemented in Runuran as well as the density function. The truncated Frechet distribution is provided in ReIns.
Friedman’s Chi distribution: provided in SuppDists.
Gamma distribution and its extensions: Base R provides the d, p, q, r functions for this distribution (see above). EnvStats provides d, p, q, r functions of the gamma parametrized by the mean and the coefficient of variation. actuar provides d, p, q, r functions of the inverse, the inverse transformed and the log gamma distributions while ghyp provides those functions for the variance gamma distribution. extraDistr and LaplacesDemon provide the inverse gamma distribution. CaDENCE provides the zero-inflated gamma distribution. VarianceGamma provides d, p, q, r functions for the variance gamma distribution as well as moments (skewness, kurtosis, ...). VGAM, ggamma provide d, p, q, r functions of the log gamma and the generalized gamma distribution. The generalized gamma distribution can also be found in gamlss.dist. See Pearson III for a three-parameter gamma distribution with a location parameter. flexsurv provides d, p, q, r functions as well as hazard (h) and integrated hazard rate (i) functions for the generalized gamma distribution. coga provides d, p, r functions for a sum of independent but not identically distributed gamma distributions. MCMCpack provides d, r functions of the Inverse Gamma. rmutil provides the generalized Gamma. distTails provides the full-tail gamma distribution sglg provides the generalized log-Gamma along with various functions to fit semi-parametric regression models. ollggamma provides d, p, q, r for the Odd Log-Logistic Generalized Gamma.
Distribution name | Packages | Functions | Distribution suffix |
Gamma | stats | d, p, q, r | gamma |
Gamma | actuar | m, mgf, lev | gamma |
Gamma | EnvStats | d, p, q, r | gammaAlt |
zero-inflated Gamma | CaDENCE | d, p, q, r | bgamma |
Inverse gamma | actuar | d, p, q, r, m, lev, mgf | invgamma |
Inverse gamma | extraDistr | d, p, q, r | invgamma |
Inverse gamma | LaplacesDemon | d, r | invgamma |
Inverse gamma | MCMCpack | d, r | invgamma |
Log-gamma | actuar | d, p, q, r, m, lev | lgamma |
Log-gamma | VGAM | d, p, q, r | lgamma |
Variance gamma | ghyp | d, p, q, r | VG |
Variance gamma | VarianceGamma | d, p, q, r, m | vg |
Generalized gamma | flexsurv | d, p, q, r, h, i | gengamma |
Generalized gamma | gamlss.dist | d, p, q, r | GG |
Generalized gamma | VGAM | d, p, q, r | gengamma.stacy |
Generalized gamma | rmutil | d, p, q, r | ggamma |
Generalized gamma | ggamma | d, p, q, r | ggamma |
convolution of gamma | coga | d, p, r | coga |
Full-taill gamma | distTails | d, p, r | dFTG |
Generalized log-gamma | sglg | d, p, q, r | glg |
Pólya–Gamma distribution: r function random sampling routines for the distribution are provided by BayesLogit, pg, and pgdraw.
Gaussian (or normal) distribution and its extensions: Base R provides the d, p, q, r functions for this distribution (see above). actuar provides the moment generating function and moments. The truncnorm package provides d, p, q, r functions for the truncated gaussian distribution as well as functions for the first two moments. EnvStats provides d, p, q, r functions for the truncated normal distribution and the zero-modified distribution. extraDistr provides the truncated normal. LaplacesDemon provides d, p, q, r functions for the Half-normal distribution. The wrapped normal distribution is provided in CircStats. lmomco implements the generalized normal distribution. The Exponentially modified Gaussian is available in emg, gamlss.dist, tsdistributions, sn implements the skew normal distribution. greybox implements the folded normal distribution. VGAM implements the folded and the skewed normal distribution, and csn provides d, r functions for the closed skew normal distribution. NormalLaplace provides d, p, q, r functions for the sum of a normal and a Laplace random variables, while LaplacesDemon provides d, r functions of the sum of a normal and a Laplace random variables. PSDistr provides d, p, q, r functions of transformations of the normal distribution, such as expnormal and sinh-normal distributions.
Distribution name | Packages | Functions | Distribution suffix |
Normal | stats | d, p, q, r | norm |
Normal | actuar | m, mgf | norm |
Truncated normal | truncnorm | d, p, q, r, m | truncnorm |
Truncated normal | EnvStats | d, p, q, r | normTrunc |
Truncated normal | extraDistr | d, p, q, r | tnorm |
Truncated normal | crch | d, p, q, r | cnorm |
Generalized normal | lmomco | d, p, q, r | gno |
Zero modified Gaussian | EnvStats | d, p, q, r | zmnorm |
Exponentially modified Gaussian | emg | d, p, q, r | emg |
Exponentially modified Gaussian | gamlss.dist | d, p, q, r | exGAUSS |
Folded and skew normal | gamlss.dist | d, p, q, r | SN1, SN2 |
Folded normal | greybox | d, p, q, r | fnorm |
Closed skew normal | csn | d, p, q, r | csn |
Skew normal | sn | d, p, q, r | sn |
Skew normal | snorm | d, p, q, r | tsdistributions |
General error distribution (also known as exponential power distribution): see exponential item.
Generalized extreme value distribution: d, p, q provided in lmomco; d, p, q, r, provided in VGAM, evd, evir, FAdist, extraDistr, EnvStats, TLMoments, rmutil, QRM, ROOPSD and fExtremes. revdbayes provide d, p, q, r functions of the GEV distribution in a Bayesian setting. bgev provide d, p, q, r functions of the bimodal GEV distribution
Gompertz distribution: provided in flexsurv, extraDistr. flexsurv also provides hazard (h) and integrated hazard rate (i) functions. The shifted Gompertz distribution is implemented in extraDistr. The unit-Gompertz is provided in ugomquantreg.
Govindarajulu distribution: provided in lmomco.
Gumbel distribution: provided in packages lmomco, VGAM, gamlss.dist, FAdist, extraDistr, QRM, TLMoments, dgumbel, EnvStats and evd. actuar provides the raw moments and the moment generating function (mgf) in addition to the d, p, q, r functions. A fast random generator is available for the Gumbel distribution is implemented in Runuran as well as the density function. The reverse Gumbel distribution is implemented in lmomco and gamlss.dist. bgumbel provides the bimodel Gumbel distribution.
Hjorth distribution: provided in rmutil.
Huber distribution: Huber’s least favourable distribution provided in package smoothmest (d, r), and in VGAM, marg, extraDistr (d, p, q, r).
(generalized) G-and-K, G-and-H distributions: gk provides d, p, q, r functions for the g-and-k and generalized g-and-h distributions which are nonlinear transforms of the Gaussian variables.
(generalized) Hyperbolic distribution: fBasics, ghyp, tsdistributions , GeneralizedHyperbolic and HyperbolicDist packages provide d, p, q, r functions for the generalized hyperbolic distribution. QRM provides d, r functions for the generalized hyperbolic distribution. SkewHyperbolic provides the skewed Hyperbolic Student t-Distribution. fBasics also implements the standardized generalized Hyperbolic distribution. A fast random generator is available for the hyperbolic distribution is implemented in Runuran as well as the density function.
Hyperbolic sine distribution and extension: gamlss.dist provides the sinh and the asinh distributions. Generalized Power Hyperbolic sine distributions are provided in FatTailsR.
Inverse Gaussian (also known Wald) distribution: d, p, q, and r functions of the inverse Gaussian are provided in statmod, extraDistr, SuppDists, rmutil. LaplacesDemon provides d, r functions for the inverse Gaussian distribution. actuar provides d, p, q, r, m, lev, mgf functions for the Inverse Gaussian distribution. SuppDists also provides a function that returns moments, skewness, kurtosis. fBasics the normal inverse Gaussian and standardized normal inverse Gaussian distributions. tsdistributions provides the normal inverse Gaussian distribution. The generalized inverse gaussian (GIG) distribution can be found in gamlss.dist, ginormal, HyperbolicDist, QRM, rmutil. The truncated GIG is also available in ginormal. A random generator is available for the (generalized) Inverse Gaussian distribution is implemented in Runuran as well as the density function. GIGrvg generates random variables from the generalized inverse Gaussian distribution. Unit inverse Gaussian provided in new.dist.
Johnson distribution: provided in SuppDists, ForestFit, tsdistributions provides d, p of Johnson SB distribution.
Jones and Pewsey distribution: provided in circular (d).
K-prime distribution: sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for K-prime distribution for computing d, p, q, r functions.
Kappa distribution: A 4-parameter Kappa distribution is provided in lmomco and FAdist.
Kappa-mu distribution: provided in lmomco.
Kato-Jones distribution: provided in circular (d, r).
Kendall’s tau distribution: provided in SuppDists.
Kiener distribution: a family of distributions generalizing hyperbolic sine distributions (see hyperbolic sine section), d, p, q, r, m provided in FatTailsR.
Kruskal Wallis distribution: provided in SuppDists.
Kumaraswamy distribution: provided in packages VGAM, extraDistr, lmomco, new.dist. elfDistr provides the Kumaraswamy Complementary Weibull Geometric Probability Distribution.
(Tukey) Lambda distribution and its extensions: The generalized Lambda distribution (GLD) is well known for its wide range of shapes. The original Tukey Lambda distribution can be obtained as a special case of the generalized Lambda distribution. There exists different parametrization of GLD in the literature: RS (Ramberg-Schmeiser or tail-index param), FMKL (Freimer-Mudholkar-Kollia-Lin), FM5 (Five-parameter version of FKML by Gilchrist), GPD (gen. Pareto dist.) and AS (Asymmetry-steepness). The following packages implement such distributions (with d, p, q, r functions): gld (RS, FKML, FM5, GPD), Davies (RS), gb (RS), lmomco (FMKL), extraDistr (original Tukey).
Tukey’s G/H distribution: provided in TukeyGH77, and Tukey’s H distribution is provided as a special case of Lambert W x F distribution.
Lambda-prime distribution: sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for K-prime distribution for computing d, p, q, r functions.
Lambert W x F distribution: LambertW package provides d, p, q, r functions as well as the first 4 central moments and a qqplot.
Laplace (also called double exponential distribution) and asymmetric Laplace distribution: provided in distr, lmomco, LaplacesDemon, L1pack, VGAM, sgt, extraDistr, greybox, rmutil and HyperbolicDist packages. LaplacesDemon provides the Laplace distribution parametrized by the precision parameter as well as the skew Laplace distribution. Asymetric Laplace distribution is implemented in ald, greybox. A fast random generator is available for the Laplace distribution is implemented in Runuran as well as the density function. smoothmest implements the density and the random generator. The skew Laplace distribution is available in sgt. LaplacesDemon provides the log-Laplace distribution.
LASSO distribution: provided in LaplacesDemon.
Lévy distribution: provided in rmutil.
Linear failure rate distribution: no longer implemented.
Loglog distribution: no longer implemented.
Lomax distribution: see beta.
Logistic distribution and its extensions: Base R provides the d, p, q, r functions for this distribution (see above). actuar and VGAM provide d, p, q, r functions for the log-logistic (also called Fisk), the paralogistic and the inverse paralogistic distributions. FAdist the log-logistic distribution with two and three parameters. llogistic provides the log-logistic parametrized by the median. trdist provides the log-logistic distribution. The generalized logistic distribution (Type I, also known as skew-logistic distribution) is provided in lmomco, sld, rmutil, SCI and glogis. GTDL implements generalized Time-Dependent Logistic distribution.
Distribution name | Packages | Functions | Distribution suffix |
Logistic | stats | d, p, q, r | logis |
Logistic | actuar | m, mgf | logis |
Log logistic | actuar | d, p, q, r, m, lev | llogis |
Log logistic | VGAM | d, p, q, r | fisk |
Log logistic | FAdist | d, p, q, r | llog, llog3 |
Paralogistic | actuar | d, p, q, r, m, lev | paralogis |
Paralogistic | VGAM | d, p, q, r | paralogistic |
Inv. paralogistic | actuar | d, p, q, r, m, lev | invparalogis |
Inv. paralogistic | VGAM | d, p, q, r | inv.paralogistic |
Truncated logistic | crch | d, p, q, r | tlogis |
Generalized logistic | glogis | d, p, q, r | glogis |
Generalized logistic | SCI | d, p, q | genlog |
Generalized logistic | lmomco | d, p, q, r | glo |
Generalized logistic | sld | d, p, q, r | sl |
Generalized logistic | rmutil | d, p, q, r | glogis |
Logit-normal distribution: provided in logitnorm.
Log-normal distribution and its extensions: The log normal distribution is implemented in Base R (see above) and poweRlaw. The log normal distribution parametrized by its mean and its coefficient of variation is also provided in EnvStats. LaplacesDemon provides the lognormal parametrized by the precision parameter. The truncated lognormal distribution is provided in EnvStats with two possible parametrizations as well as in ReIns. The 3-parameter lognormal distribution is available in lmomco, greybox, TLMoments, EnvStats and FAdist. The package loglognorm implements d, p, q, r functions for the double lognormal distribution, as well as the raw moment, the expected value and the variance functions. EnvStats provides d, p, q, r functions for the zero-modified lognormal distribution with two possible parametrizations. distributionsrd provides the double Pareto-lognormal distribution, the left Pareto-lognormal distribution, the truncated lognormal distribution.
Makeham distribution: provided in VGAM.
Minimax distribution: provided in minimax.
Mittag-Leffler distribution: d, p, q, r functions provided in MittagLeffleR.
Muth distribution: provided in new.dist.
Nakagami distribution: provided in VGAM.
Neutrosophic: provided in ntsDists.
Pareto distribution: d, p, q, r functions are implemented in VGAM for the Pareto distribution type IV (which includes Burr’s distribution, Pareto type III, Pareto type II (also called the lomax distribution) and Pareto type I) and the (upper/lower) truncated Pareto distribution. In an actuarial context, actuar provides d, p, q, r functions as well as moments and limited expected values for the Pareto I and II, the inverse Pareto, the ‘generalized pareto’ distributions, the Burr and the inverse Burr distributions, all special cases of the transformed beta II distribution. A fast random generator for the Burr and the Pareto II distribution is implemented in Runuran as well as the density. EnvStats and LaplacesDemon provides d, p, q, r functions for Pareto I distribution. extremefit provides the Burr, the Pareto II, mixture of Pareto I distributions and a composite distribution of two Pareto I distributions. lmomco, evd, fExtremes, extraDistr, QRM, Renext, revdbayes, FAdist, LaplacesDemon, TLMoments qrmtools and evir packages implement the Generalized Pareto Distribution (from Extreme Value Theory), which is depending the shape parameter’s value a Pareto II distribution, a shifted exponential distribution or a generalized beta I distribution. ParetoPosStable implements the Pareto positive stable distribution. The extended Pareto distribution is implemented in RTDE and the shifted truncated (to unit interval) Pareto is implemented in mbbefd. ReIns provides Burr, extended Pareto, generalized Pareto, Pareto 1 distributions and their truncated version. CaDENCE provides the Pareto 2 and the zero-inflated Pareto 2 distribution. Pareto provides the Pareto 1, piecewise Pareto and the generalized Pareto (from actuarial theory). The gamma-Lomax distribution is provided in new.dist.
Distribution name | Packages | Functions | Distribution suffix |
Pareto I | VGAM | d, p, q, r | paretoI |
Pareto I | actuar | d, p, q, r, m, lev | pareto1 |
Pareto I | EnvStats | d, p, q, r | pareto |
Pareto I | extraDistr | d, p, q, r | pareto |
Pareto I | ReIns | d, p, q, r | pareto |
Pareto I | LaplacesDemon | d, p, q, r | pareto |
Pareto I | distributionsrd | d, p, q, r | pareto |
Pareto I | Pareto | d, p, q, r | Pareto |
Trunc. Pareto I | ReIns | d, p, q, r | tpareto |
Pareto II | VGAM | d, p, q, r | paretoII |
Pareto II | actuar | d, p, q, r, m, lev | pareto, pareto2 |
Pareto II | Runuran | d, r | pareto |
Pareto II | extraDistr | d, p, q, h | lomax |
Pareto II | extremefit | d, p, q, h | pareto |
Pareto II | Renext | d, p, q, r | lomax |
Pareto II | rmutil | d, p, q, r | pareto |
Pareto II | CaDENCE | d, p, q, r | pareto2 |
zero-inflated Pareto II | CaDENCE | d, p, q, r | bpareto2 |
Pareto III | VGAM | d, p, q, r | paretoIII |
Pareto III | actuar | d, p, q, r | pareto3 |
Pareto IV | VGAM | d, p, q, r | paretoIV |
Pareto IV | actuar | d, p, q, r | pareto4 |
Inverse Pareto | actuar | d, p, q, r, m, lev | invpareto |
Inverse Pareto | distributionsrd | d, p, q, r, m, lev | invpareto |
Extended Pareto | RTDE | d, p, q, r | EPD |
Extended Pareto | ReIns | d, p, q, r | epd |
Shift. trunc. Pareto | mbbefd | d, p, q, r, m, ec | stpareto |
Gen. Pareto (actuarial) | actuar | d, p, q, r, m, lev | genpareto |
Gen. Pareto (actuarial) | Pareto | d, p, q, r | GenPareto |
Gen. Pareto (EVT) | lmomco | d, p, q, r | gpa |
Gen. Pareto (EVT) | evd | d, p, q, r | gpd |
Gen. Pareto (EVT) | fExtremes | d, p, q, r | gpd |
Gen. Pareto (EVT) | evir | d, p, q, r | gpd |
Gen. Pareto (EVT) | extraDistr | d, p, q, r | gpd |
Gen. Pareto (EVT) | QRM | d, p, q, r | GPD |
Gen. Pareto (EVT) | ReIns | d, p, q, r | gpd |
Gen. Pareto (EVT) | LaplacesDemon | d, r | gpd |
Gen. Pareto (EVT) | TLMoments | d, p, q, r | gpd |
Trunc. Gen. Pareto (EVT) | ReIns | d, p, q, r | tgpd |
Gen. Pareto (EVT) | revdbayes | d, p, q, r | gp |
Gen. Pareto (EVT) | Renext | d, p, q, r | GPD |
Gen. Pareto (EVT) | qrmtools | d, p, q, r | GPD |
Gen. Pareto (EVT) | ROOPSD | d, p, q, r | gpd |
Feller-Pareto | actuar | d, p, q, r, m, lev | fpareto |
Burr | actuar | d, p, q, r, m, lev | burr |
Burr | extremefit | d, p, q, r | burr |
Burr | ReIns | d, p, q, r | burr |
Burr | rmutil | d, p, q, r | burr |
Trunc. Burr | ReIns | d, p, q, r | tburr |
Inverse Burr | actuar | d, p, q, r, m, lev | invburr |
Pearson’s distribution: Pearson type III available in lmomco and FAdist. A log-Pearson type III distribution is also available in FAdist. PearsonDS provides the d, p, q, r functions as well as the first four moments for the Pearson distributions: types I, II, III, IV, V, VI, VII. cpd provides d, p, q, r for complex bi/triparametric Pearson distributions.
Pearson’s Rho distribution: provided in SuppDists.
Perks distribution: provided in VGAM.
Planck’s distribution: a random generator is available in Runuran.
Phase-type distribution: provided in actuar, mapfit, matrixdist, PhaseTypeR.
Power distribution: r pkg(“poweRlaw”)` implement the exponential power distribution. Two-sided power distribution provided in rmutil.
Proportion distribution: this is the distribution for the difference between two independent beta distributions. d, p, q, r functions in tolerance.
Omega distribution: provided in new.dist.
Quadratic forms and their ratios: CompQuadForm provides several exact and approximate methods to evaluate the distribution function of quadratic forms in normal variables. Qapprox provides fast approximations for the distribution function in nonnegative definite cases. QF provides d, p, q, r for nonnegative definite quadratic forms in normal variables and their ratios where the numerator and denominator are independent, as well as p for ratios of central quadratic forms in the same normal variables. qfratio provides d, p, q, r for the distribution of ratios of potentially noncentral quadratic forms in the same normal variables, as well as moment.
Rayleigh distribution: provided in packages VGAM, extraDistr and lmomco. The slashed generalized Rayleigh distribution provided in new.dist. The two-parameter Rayleigh provided in new.dist.
Ram Awadh: provided in new.dist.
Response time distribution: rtdists provides d, p, q, r functions for the (Ratcliff) diffusion distribution and for the linear ballistic accumulator (LBA) with different underlying drift-distributions (Normal, Gamma, Frechet, and log-normal).
Simplex distribution: provided in rmutil.
Singh-Maddala distribution: see beta.
Slash distribution: provided in lmomco, extraDistr and VGAM.
Spearman’s Rho distribution: provided in SuppDists.
Stable distribution: d, p, q, r functions are available in fBasics and stabledist, the functions use the approach of J.P. Nolan for general stable distributions. stable (d, p, q, r, h) is also used for general stable and uses a modified Buck parametrization. MixedTS provides mixed tempered stable distribution (d, p, q, r). FMStable provides (d, p, q) the extremal or maximally skew stable and the finite moment log stable distributions. SymTS provides d, p, q, r functions for symmetric stable, symmetric classical tempered stable, and symmetric power tempered stable distributions. TempStable provides d, p, q, r functions for tempered stable distributions. libstable4u provides d, p, q, r functions for skew stable distributions. dstabledist provides d, p, r functions for skew stable distributions. StableEstim provides fitting functions, characteristic functions, and simulation capabilities for 4-parameter stable distributions.
Student distribution and its extensions: Base R provides the d, p, q, r functions for Student and non central Student distribution (see above). extraDistr and LaplacesDemon provides the Student distribution with location and scale parameters. LaplacesDemon provides d, p, q, r functions for the Half-Student distribution. sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for doubly non central Student distribution for computing d, p, q, r functions. The skewed Student distribution is provided in skewt, sn, tsdistributions and gamlss.dist packages. The generalized skew distribution is provided in sgt. d, p, q, r functions for the generalized t-distribution can be found in gamlss.dist. fBasics provides d, p, q, r functions for the skew and the generalized hyperbolic t-distribution. The L-moments of the Student t (3-parameter) are provided in lmomco. crch provides d, p, q, r functions for the truncated student distribution.
Distribution name | Packages | Functions | Distribution suffix |
Student | stats | d, p, q, r | t |
Student with loc. and scal. | extraDistr | d, p, q, r | lst |
Student with loc. and scal. | LaplacesDemon | d, p, q, r | st |
Doubly non central St. | sadists | d, p, q, r | dnt |
Skew Student | skewt | d, p, q, r | skt |
Skew Student | sn | d, p, q, r | st |
Skew St. Type 1-5 | gamlss.dist | d, p, q, r | ST1, ST2, ST3, ST4, ST5 |
Gen. Student | gamlss.dist | d, p, q, r | GT |
Gen. Hyp. Student | fBasics | d, p, q, r | ght |
Skew Gen. Student | sgt | d, p, q, r | sgt |
Topp-Leone Cauchy Rayleigh (TLCAR) distribution: provided in TLCAR (d, p, q, r).
Triangle/trapezoidal distribution: packages triangle, extraDistr, mc2d, EnvStats and VGAM provide d, p, q, r functions for the triangle or triangular distribution, while the package trapezoid provides d, p, q, r functions for the Generalized Trapezoidal Distribution. CircStats, circular provide d, r functions for triangular distribution. A fast random generator is available for the triangle distribution is implemented in Runuran as well as the density function.
Tsallis or q-Exponential distribution: tsallisqexp provides d, p, q, r functions for two parametrizations of the Tsallis distribution and also implements a left-censored version.
Tweedie distribution: the Tweedie distribution is implemented in package tweedie. Let us note that the Tweedie distribution is not necessarily continuous, a special case of it is the Poisson distribution.
Uniform distribution: d, p, q, r functions are of course provided in R. See section RNG for random number generation topics. KScorrect provides d, p, q, r functions for the log-uniform distribution.
Upsilon distribution: sadists implements Gram Charlier, Edgeworth and Cornish-Fisher approximations for Upsilon distribution for computing d, p, q, r functions.
Vasicek distribution: vasicek implements d, p, r functions. vasicekreg implements d, p, q, r functions.
von Mises distribution: The CircStats package provides d, p, r functions; the circular package provides d, p, q, r functions. rvMF package provides a fast random generator for von Mises Fisher distribution.
Wakeby distribution: A 5-parameter Wakeby is provided in lmomco.
Weibull distribution and its extensions: Base R provides the d, p, q, r functions for this distribution (see above). The inverse Weibull is provided in actuar package and also the moments and the limited expected value for both the raw and the inverse Weibull distribution. FAdist implements the three-parameter Weibull distribution. Furthermore, lmomco implements the Weibull distribution while evd implements the reverse Weibull distribution. The reverse generalized extreme value distribution are provided in gamlss.dist (d, p, q, r) and the shifted left truncated Weibull distribution is provided in Renext. The right truncated Weibull is provided in ReIns. The generalized Weibull is provided in rmutil. The tail Weibull is provided in distTails. CaDENCE provides the zero-inflated Weibull distribution. The bimodal Weibull distribution is provided in new.dist.
First-passage time of a Wiener process: WienR provides d, p functions of the first-passage time of a diffusion model.
Huang-Wan distribution: provided in LaplacesDemon.
Inverse matrix gamma distribution: provided in LaplacesDemon.
Inverse Wishart distribution: LaplacesDemon provides inverse Wishart distribution parametrized either by Sigma or by its Cholesky decomposition. LaplacesDemon provides the scaled inverse Wishart distribution. MCMCpack and mniw provides the inverse Wishart distribution. wishmom allows to computes the theoretical moments of the inverse beta-Wishart distribution.
Marcenko-Pastur distribution: provided in RMTstat, MCMCpack and bayesm.
Matrix gamma distribution: provided in LaplacesDemon.
Matrix normal distribution: MBSP (r) provides a random generator using a Cholesky decomposition; matrixsampling (r) provides a random generator using a spectral decomposition; LaplacesDemon and mniw (d, r); matrixNormal (d, p, r) collects these forms in one place and allows users to be flexible in simulating random variates (Cholesky, spectral, SVD).
Matrix student distribution: provided in mniw.
Normal Inverse Wishart distribution: provided in LaplacesDemon, mniw.
Normal Wishart distribution: provided in LaplacesDemon.
Tracy-Widom distribution: provided in RMTstat, MCMCpack and bayesm: supported beta values are 1 (Gaussian Orthogonal Ensemble), 2 (Gaussian Unitary Ensemble), and 4 (Gaussian Symplectic Ensemble).
Sparse matrix: spam provides functionalities to draw random numbers from a user-supplied RNG (e.g. rexp
) or from a multivariate normal distribution for large sparse matrices: typically for sparse covariance matrices.
Spiked Wishart Maximum Eigenvalue Distribution: provided in RMTstat, MCMCpack and bayesm.
Wishart distributions: Base R provides the r function for the Wishart distribution. MCMCpack, RMTstat, bayesm, mniw provides d, r functions, bayesm provides r function. LaplacesDemon provides Wishart distribution parametrized either by Sigma or by its Cholesky decomposition. wishmom allows to computes the theoretical moments of the beta-Wishart distribution.
White Wishart Maximum Eigenvalue Distribution: provided in RMTstat, MCMCpack and bayesm.
Yang-Berger distribution: provided in LaplacesDemon.
Zellner distribution: provided in LaplacesDemon.
mean()
, sd()
, var()
functions to compute the mean, standard deviation and variance, respectively.set.seed
and the kind of RNG can be specified using RNGkind
. The default RNG is the Mersenne-Twister algorithm. Other generators include Wichmann-Hill, Marsaglia-Multicarry, Super-Duper, Knuth-TAOCP, Knuth-TAOCP-2002, as well as user-supplied RNGs. For normal random numbers, the following algorithms are available: Kinderman-Ramage, Ahrens-Dieter, Box-Muller, Inversion (default). In addition to the tools above, setRNG provides an easy way to set, retain information about the setting, and reset the RNG.stats
(and actuar
) distributions to a tidy tibble
which allows to work with the rest of the tidyverse
.density()
), (2) the empirical cumulative distribution function (see ecdf()
), (3) the empirical quantile (see quantile()
) and (4) random sampling with or without replacement (see sample()
). distributionsrd provides d, p, q, r user-friendly functions for the empirical distributions as well as moments. distfromq provides d, p, q, r user-friendly functions for the empirical distributions and options for estimating the tails. mded provides a function for measuring the difference between two independent or non-independent empirical distributions and returning a significance level of the difference.random()
, pdf()
, cdf()
and quantile()
provide replacements for base R’s r/d/p/q
style functions. distributional also provides tools to create and to manipulate probability distributions using S3, with cdf()
, density()
, hdr()
, mean()
, median()
, quantile()
,...fitdistr
function for parameter estimations. fitdistrplus greatly enlarges fitdistr
and enhances the tools to fit a user-supplied probability distribution. OneStep is based upon fitdistrplus to provide one-step estimation procedures. EnvStats, fitteR, ExtDist, MLE also provide tools to fit and select a set of probability distributions. flexsurv and msm provides a quantile function for a generic distribution based on numerical computation based on a dichotomic search. reservr provides fitting procedures for censored and truncated dataset on a set of selected distributions.