Probability distributions#

The skpro.distributions module contains probability distributions which combine a pandas.DataFrame-like API with a scikit-base compatible object interface.

All distributions in skpro can be listed using the skpro.registry.all_objects utility, using object_types="distribution", optionally filtered by tags. Valid tags can be listed using skpro.registry.all_tags.

Base#

BaseDistribution([index, columns])

Base probability distribution.

Parametric distributions#

Continuous support - full reals#

Laplace(mu, scale[, index, columns])

Laplace distribution.

Logistic(mu, scale[, index, columns])

Logistic distribution.

Normal(mu, sigma[, index, columns])

Normal distribution aka Gaussian distribution.

SkewNormal(mu, sigma[, alpha, index, columns])

Skew-Normal Probability Distribution.

TDistribution(mu, sigma[, df, index, columns])

Student's t-distribution.

TruncatedNormal(mu, sigma, l_trunc, r_trunc)

A truncated normal probability distribution.

Uniform(lower, upper[, index, columns])

Continuous uniform distribution.

Continuous support - non-negative reals#

Alpha(a[, index, columns])

Alpha distribution.

Beta(alpha, beta[, index, columns])

Beta distribution.

BurrIII(c[, scale, index, columns])

Burr III probability distribution.

BurrXII(c, d[, scale, index, columns])

Burr XII probability distribution.

ChiSquared(dof[, index, columns])

Chi-Squared distribution.

Exponential(rate[, index, columns])

Exponential Distribution.

Erlang(rate[, k, index, columns])

Erlang Distribution.

FatigueLife(c[, scale, index, columns])

Fatigue-life (Birnbaum–Saunders) probability distribution.

FDist(dfn, dfd[, index, columns])

F (Fisher-Snedecor) probability distribution.

Fisk([alpha, beta, index, columns])

Fisk distribution, aka log-logistic distribution.

Gamma(alpha, beta[, index, columns])

Gamma Distribution.

GeneralizedPareto(c[, scale, loc, index, ...])

Generalized Pareto probability distribution.

GumbelL([mu, sigma, index, columns])

Gumbel Left probability distribution.

GumbelR([mu, sigma, index, columns])

Gumbel Right probability distribution.

Levy([mu, scale, index, columns])

Levy probability distribution.

LogGamma(c[, index, columns])

Log-Gamma Distribution.

HalfCauchy(beta[, index, columns])

Half-Cauchy distribution.

HalfLogistic(beta[, index, columns])

Half-Logistic distribution.

HalfNormal(sigma[, index, columns])

Half-Normal distribution.

InverseGamma(alpha, beta[, index, columns])

Inverse Gamma Distribution.

InverseGaussian(mu, scale[, index, columns])

Inverse Gaussian distribution, aka Wald distribution.

LogLaplace(scale[, index, columns])

Log-Laplace distribution.

Pareto(scale, alpha[, index, columns])

Pareto distribution.

Rayleigh([scale, index, columns])

Rayleigh distribution.

TruncatedPareto(b[, scale, lower, upper, ...])

Truncated Pareto probability distribution.

Weibull(scale, k[, index, columns])

Weibull distribution.

Integer support#

Binomial(n, p[, index, columns])

Binomial distribution.

Geometric(p[, index, columns])

Geometric Distribution.

NegativeBinomial(mu, alpha[, index, columns])

Negative binomial distribution.

Poisson(mu[, index, columns])

Poisson distribution.

ZeroInflated(p, distribution[, index, columns])

A Zero-Inflated distribution, adding a Bernoulli gate to any distribution.

Skellam(mu1, mu2[, index, columns])

Skellam probability distribution.

Non-parametric and empirical distributions#

Delta(c[, index, columns])

Delta distribution aka constant distribution aka certain distribution.

Empirical(spl[, weights, time_indep, ...])

Empirical distribution, or weighted sum of delta distributions.

Histogram(bins, bin_mass[, index, columns])

Histogram Probability Distribution.

QPD_Empirical(quantiles[, time_indep, ...])

Empirical quantile parametrized distribution.

QPD_Johnson(alpha, qv_low, qv_median, qv_high)

Johnson Quantile-Parameterized Distribution.

QPD_U(alpha, qv_low, qv_median, qv_high[, ...])

Johnson Quantile-Parameterized Distributions with unbounded mode.

QPD_S(alpha, qv_low, qv_median, qv_high, lower)

Johnson Quantile-Parameterized Distributions with semi-bounded mode.

QPD_B(alpha, qv_low, qv_median, qv_high, ...)

Johnson Quantile-Parameterized Distributions with bounded mode.

Composite distributions#

Transformation composition#

MeanScale(d[, mu, sigma, index, columns])

Composition for offset and scaling, and mean/scale family of distributions.

TransformedDistribution(distribution, transform)

Distribution transformed by an entry-wise function.

Truncated and inflated distributions#

Hurdle(p, distribution[, index, columns])

A Hurdle distribution.

LeftTruncated(distribution, lower[, index, ...])

A left truncated distribution _not_ including the lower bound.

TruncatedDistribution(distribution, *[, ...])

A truncated distribution.

ZeroInflated(p, distribution[, index, columns])

A Zero-Inflated distribution, adding a Bernoulli gate to any distribution.

Mixture composition#

KernelMixture(support[, h, kernel, weights, ...])

Kernel mixture distribution, a.k.a.

Mixture(distributions[, weights, ...])

Mixture of distributions.

NormalMixture(pi, mu, sigma[, index, columns])

Mixture of Normal distributions with per-sample mixing weights.

Sampling and multivariate composition#

IID(distribution[, index, columns])

An iid sample of a given distribution.