Одномерные распределения
Одномерные распределения — это распределения, которые имеют размерность Univariate
(то есть каждая выборка представляет собой скалярное значение). Абстрактные типы для одномерных распределений:
const UnivariateDistribution{S<:ValueSupport} = Distribution{Univariate,S}
const DiscreteUnivariateDistribution = Distribution{Univariate, Discrete}
const ContinuousUnivariateDistribution = Distribution{Univariate, Continuous}
Общий интерфейс
Для каждого одномерного распределения реализован ряд методов, которые предоставляют такие полезные возможности, как вычисление моментов, вычисление функции плотности вероятности и выборка (то есть генерирование случайных чисел).
Получение параметров
Примечание. Метод params
определен для всех одномерных распределений, в то время как другие методы получения параметров — только для тех распределений, для которых эти параметры имеют смысл. Подробные сведения см. ниже.
#
StatsAPI.params
— Method
params(d::UnivariateDistribution)
Возвращает кортеж параметров. Если d
— это распределение типа D
, то D(params(d)...)
создает распределение, в точности совпадающее с .
#
Distributions.scale
— Method
scale(d::UnivariateDistribution)
Возвращает параметр масштаба.
#
Distributions.location
— Method
location(d::UnivariateDistribution)
Возвращает параметр расположения.
#
Distributions.shape
— Method
shape(d::UnivariateDistribution)
Возвращает параметр формы.
#
Distributions.rate
— Method
rate(d::UnivariateDistribution)
Возвращает параметр вероятности.
#
Distributions.ncategories
— Method
ncategories(d::UnivariateDistribution)
Возвращает количество категорий.
#
Distributions.ntrials
— Method
ntrials(d::UnivariateDistribution)
Возвращает количество испытаний.
#
StatsAPI.dof
— Method
dof(d::UnivariateDistribution)
Возвращает степени свободы.
Для распределений, для которых имеют смысл удачный и неудачный исходы, определены следующие методы:
#
Distributions.succprob
— Method
succprob(d::DiscreteUnivariateDistribution)
Возвращает вероятность успеха.
#
Distributions.failprob
— Method
failprob(d::DiscreteUnivariateDistribution)
Возвращает вероятность неудачи.
Вычисление статистики
#
Base.maximum
— Method
maximum(d::Distribution)
Возвращает максимум носителя d
.
#
Base.minimum
— Method
minimum(d::Distribution)
Возвращает минимум носителя d
.
#
Base.extrema
— Method
extrema(d::Distribution)
Возвращает минимум и максимум носителя d
в виде двухэлементного кортежа.
#
Statistics.mean
— Method
mean(d::UnivariateDistribution)
Вычисляет математическое ожидание.
#
Statistics.var
— Method
var(d::UnivariateDistribution)
Вычисляет дисперсию. (Общее среднеквадратичное отклонение указывается в виде std(d) = sqrt(var(d))
.)
#
Statistics.std
— Method
std(d::UnivariateDistribution)
Возвращает среднеквадратичное отклонение распределения d
, т. е. sqrt(var(d))
.
#
Statistics.median
— Method
median(d::UnivariateDistribution)
Возвращает медианное значение распределения d
. Медиана — это наименьшее значение x
в носителе d
, для которого cdf(d, x) ≥ 1/2
. Так как этому определению соответствует квантиль уровня 1/2, в качестве резервного варианта вызывается функция quantile
.
#
StatsBase.modes
— Method
modes(d::UnivariateDistribution)
Возвращает все режимы (если это имеет смысл).
#
StatsBase.mode
— Method
mode(d::UnivariateDistribution)
Возвращается первый режим.
#
StatsBase.skewness
— Method
skewness(d::UnivariateDistribution)
Вычисляет коэффициент асимметрии.
#
StatsBase.kurtosis
— Method
kurtosis(d::UnivariateDistribution)
Вычисляет коэффициент эксцесса.
#
StatsBase.kurtosis
— Method
kurtosis(d::Distribution, correction::Bool)
По умолчанию вычисляет коэффициент эксцесса. При correction=false может возвращаться собственно куртозис.
#
Distributions.isplatykurtic
— Method
isplatykurtic(d)
Возвращает значение, указывающее, имеет ли d
отрицательный эксцесс (то есть kurtosis(d) < 0
).
#
Distributions.isleptokurtic
— Method
isleptokurtic(d)
Возвращает значение, указывающее, имеет ли d
положительный эксцесс (то есть kurtosis(d) > 0
).
#
Distributions.ismesokurtic
— Method
ismesokurtic(d)
Возвращает значение, указывающее, имеет ли d
нулевой эксцесс (то есть kurtosis(d) == 0
).
#
StatsBase.entropy
— Method
entropy(d::UnivariateDistribution)
Вычисляет значение энтропии распределения d
.
#
StatsBase.entropy
— Method
entropy(d::UnivariateDistribution, b::Real)
Вычисляет значение энтропии распределения d
относительно заданного основания.
#
StatsBase.entropy
— Method
entropy(d::UnivariateDistribution, b::Real)
Вычисляет значение энтропии распределения d
относительно заданного основания.
#
Distributions.mgf
— Method
mgf(d::UnivariateDistribution, t)
Вычисляет производящую функцию моментов распределения d
в момент t
.
См. также описание cgf
.
#
Distributions.cgf
— Method
cgf(d::UnivariateDistribution, t)
Вычисляет производящую функцию кумулянтов распределения d
в момент t
.
Производящая функция кумулянтов представляет собой логарифм производящей функции моментов: cgf = log ∘ mgf
. На практике, однако, правая часть может вызывать проблемы переполнения.
См. также описание mgf
.
#
Distributions.cf
— Method
cf(d::UnivariateDistribution, t)
Вычисляет характеристическую функцию распределения d
.
#
Distributions.pdfsquaredL2norm
— Function
pdfsquaredL2norm(d::Distribution)
Возвращает квадрат нормы L2 плотности распределения вероятностей для распределения d
:
где — носитель .
Оценка вероятности
#
Distributions.insupport
— Method
insupport(d::UnivariateDistribution, x::Any)
Если x
— скалярное значение, возвращается значение, указывающее, находится ли x в пределах носителя d
(например, insupport(d, x) = minimum(d) <= x <= maximum(d)
). Если x
— массив, возвращается значение, указывающее, находится ли каждый элемент x в пределах носителя d
.
Доступны универсальные резервные методы, однако зачастую insupport
выполняется более эффективно, поэтому желательно использовать специализированную версию insupport
. Кроме того, эту функцию следует переопределить, если носитель состоит из нескольких непересекающихся интервалов.
#
Distributions.pdf
— Method
pdf(d::UnivariateDistribution, x::Real)
Вычисляет плотность вероятностей (массу) в x
.
См. также: logpdf
.
#
Distributions.logpdf
— Method
logpdf(d::UnivariateDistribution, x::Real)
Вычисляет логарифм плотности вероятностей (массы) в x
.
См. также: pdf
.
#
Distributions.cdf
— Method
cdf(d::UnivariateDistribution, x::Real)
Вычисляет интегральную вероятность в x
.
#
Distributions.logcdf
— Method
logcdf(d::UnivariateDistribution, x::Real)
Логарифм значений интегральной функции, вычисленных в x
, то есть log(cdf(x))
.
#
Distributions.logdiffcdf
— Method
logdiffcdf(d::UnivariateDistribution, x::Real, y::Real)
Натуральный логарифм разницы значений интегральной функции плотности в точках x
и y
, то есть log(cdf(x) - cdf(y))
.
#
Distributions.ccdf
— Method
ccdf(d::UnivariateDistribution, x::Real)
Комплементарная интегральная функция, вычисленная в точке x
, то есть 1 - cdf(d, x)
.
#
Distributions.logccdf
— Method
logccdf(d::UnivariateDistribution, x::Real)
Логарифм значений комплементарной интегральной функции, вычисленных в x, то есть log(ccdf(x))
.
#
Statistics.quantile
— Method
quantile(d::UnivariateDistribution, q::Real)
Вычисляет (обобщенную) обратную интегральную функцию распределения в точке q
.
При заданном 0 ≤ q ≤ 1
quantile(d, q)
— это наименьшее значение x
в носителе d
, для которого cdf(d, x) ≥ q
.
См. также: cquantile
, invlogcdf
и invlogccdf
.
#
Distributions.cquantile
— Method
cquantile(d::UnivariateDistribution, q::Real)
Комплементарное значение квантиля, то есть quantile(d, 1-q)
.
#
Distributions.invlogcdf
— Method
invlogcdf(d::UnivariateDistribution, lp::Real)
Функция, обратная функции logcdf
(обобщенная).
При заданном lp ≤ 0
invlogcdf(d, lp)
— это наименьшее значение x
в носителе d
, для которого logcdf(d, x) ≥ lp
.
#
Distributions.invlogccdf
— Method
invlogccdf(d::UnivariateDistribution, lp::Real)
Функция, обратная функции logccdf
(обобщенная).
При заданном lp ≤ 0
invlogccdf(d, lp)
— это наименьшее значение x
в носителе d
, для которого logccdf(d, x) ≤ lp
.
Выборка (генерирование случайных чисел)
#
Base.rand
— Method
rand(rng::AbstractRNG, d::UnivariateDistribution)
Генерирует скалярную выборку из d
. Общий резервный метод — quantile(d, rand())
.
#
Random.rand!
— Method
rand!(::AbstractRNG, ::Sampleable, ::AbstractArray)
Выполняет выборку на месте из сэмплера и сохраняет результат в указанном массиве.
Непрерывные распределения
#
Distributions.Arcsine
— Type
Arcsine(a,b)
Распределение арксинуса имеет следующую функцию плотности вероятности:
Arcsine() # Распределение арксинуса с носителем [0, 1]
Arcsine(b) # Распределение арксинуса с носителем [0, b]
Arcsine(a, b) # Распределение арксинуса с носителем [a, b]
params(d) # Возвращает параметры, то есть (a, b)
minimum(d) # Возвращает нижнюю границу, то есть a
maximum(d) # Возвращает верхнюю границу, то есть b
location(d) # Возвращает левую границу, то есть a
scale(d) # Возвращает интервал носителя, то есть b – a
Внешние ссылки
Для обхода проверок аргументов используйте вызов Arcsine(a, b, check_args=false)
.
#
Distributions.Beta
— Type
Beta(α, β)
Бета-распределение имеет следующую функцию плотности вероятности.
Бета-распределение связано с распределением Gamma
той особенностью, что если и независимо друг от друга, то .
Beta() # эквивалентно Beta(1, 1)
Beta(α) # эквивалентно Beta(α, α)
Beta(α, β) # Бета-распределение с параметрами формы α и β
params(d) # Возвращает параметры, то есть (α, β)
Внешние ссылки
#
Distributions.BetaPrime
— Type
BetaPrime(α, β)
Бета-простое распределение имеет следующую функцию плотности вероятности.
Бета-простое распределение связано с распределением Beta
тем отношением, что если , то
BetaPrime() # эквивалентно BetaPrime(1, 1)
BetaPrime(α) # эквивалентно BetaPrime(α, α)
BetaPrime(α, β) # Бета-простое распределение с параметрами формы α и β
params(d) # Возвращает параметры, то есть (α, β)
Внешние ссылки
#
Distributions.Biweight
— Type
Biweight(μ, σ)
#
Distributions.Cauchy
— Type
Cauchy(μ, σ)
Распределение Коши с местоположением μ
и масштабом σ
имеет следующую функцию плотности вероятности.
Cauchy() # Стандартное распределение Коши, то есть Cauchy(0, 1)
Cauchy(μ) # Распределение Коши с местоположением μ и единичным масштабом, то есть Cauchy(μ, 1)
Cauchy(μ, σ) # Распределение Коши с местоположением μ и масштабом σ
params(d) # Возвращает параметры, то есть (μ, σ)
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть σ
Внешние ссылки
#
Distributions.Chernoff
— Type
Chernoff()
Распределение Чернова — это распределение случайной переменной,
где — стандартное двустороннее броуновское движение.
Это распределение возникает как предельное распределение различных оценочных функций, согласованных по корню кубическому из n, включая оценку изотонной регрессии Брунка, оценку изотонной плотности Гренандера, оценку наименьшей медианы квадратов Руссеува и оценку максимального вклада Мански.
Теоретические результаты см., например, в работе Кима (Kim) и Полларда (Pollard), Annals of Statistics, 1990 г. Код для вычисления pdf и cdf основан на алгоритме, описанном в статье Грунебоома (Groeneboom) и Веллнера (Wellner), Journal of Computational and Graphical Statistics, 2001 г.
cdf(Chernoff(),-x) # Для «хвостовых» вероятностей используйте этот вариант вместо 1-cdf(Chernoff(),x)
#
Distributions.Chi
— Type
Chi(ν)
Хи-распределение с ν
степенями свободы имеет следующую функцию плотности вероятности.
Это распределение корня квадратного случайной величины, распределенной по закону Chisq
.
Chi(ν) # Хи-распределение с ν степенями свободы
params(d) # Возвращает параметры, то есть (ν,)
dof(d) # Возвращает количество степеней свободы, то есть ν
Внешние ссылки
#
Distributions.Chisq
— Type
Chisq(ν)
Распределение хи-квадрат (обычно записывается в виде χ²) с ν
степенями свободы имеет следующую функцию плотности вероятности.
Если ν
— целое число, то это распределение суммы квадратов ν
независимых стандартных случайных величин, распределенных по закону Normal
.
Chisq(ν) # Распределение хи-квадрат с ν степенями свободы
params(d) # Возвращает параметры, то есть (ν,)
dof(d) # Возвращает количество степеней свободы, то есть ν
Внешние ссылки
#
Distributions.Cosine
— Type
Cosine(μ, σ)
Распределение приподнятого косинуса.
Внешняя ссылка:
#
Distributions.Epanechnikov
— Type
Epanechnikov(μ, σ)
#
Distributions.Erlang
— Type
Erlang(α,θ)
Распределение Эрланга — это особый случай распределения Gamma
с целочисленным параметром формы.
Erlang() # Распределение Эрланга с единичной формой и единичным масштабом, то есть Erlang(1, 1)
Erlang(a) # Распределение Эрланга с параметром формы a и единичным масштабом, то есть Erlang(a, 1)
Erlang(a, s) # Распределение Эрланга с параметром формы a и масштабом s
Внешние ссылки
#
Distributions.Exponential
— Type
Exponential(θ)
Экспоненциальное распределение с параметром масштаба θ
имеет следующую функцию плотности вероятности.
Exponential() # Экспоненциальное распределение с единичным масштабом, то есть Exponential(1)
Exponential(θ) # Экспоненциальное распределение с масштабом θ
params(d) # Возвращает параметры, то есть (θ,)
scale(d) # Возвращает параметр масштаба, то есть θ
rate(d) # Возвращает параметр вероятности, то есть 1 / θ
Внешние ссылки
#
Distributions.FDist
— Type
FDist(ν1, ν2)
F-распределение имеет следующую функцию плотности вероятности.
Оно связано с распределением Chisq
той особенностью, что если и , то .
FDist(ν1, ν2) # F-распределение с параметрами ν1 и ν2
params(d) # Возвращает параметры, то есть (ν1, ν2)
Внешние ссылки
#
Distributions.Frechet
— Type
Frechet(α,θ)
Распределение Фреше с формой α
и масштабом θ
имеет следующую функцию плотности вероятности.
Frechet() # Распределение Фреше с единичной формой и единичным масштабом, то есть Frechet(1, 1)
Frechet(α) # Распределение Фреше с формой α и единичным масштабом, то есть Frechet(α, 1)
Frechet(α, θ) # Распределение Фреше с формой α и масштабом θ
params(d) # Возвращает параметры, то есть (α, θ)
shape(d) # Возвращает параметр формы, то есть α
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
#
Distributions.Gamma
— Type
Gamma(α,θ)
Гамма-распределение с параметром формы α
и масштабом θ
имеет следующую функцию плотности вероятности.
Gamma() # Гамма-распределение с единичной формой и единичным масштабом, то есть Gamma(1, 1)
Gamma(α) # Гамма-распределение с формой α и единичным масштабом, то есть Gamma(α, 1)
Gamma(α, θ) # Гамма-распределение с формой α и масштабом θ
params(d) # Возвращает параметры, то есть (α, θ)
shape(d) # Возвращает параметр формы, то есть α
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
#
Distributions.GeneralizedExtremeValue
— Type
GeneralizedExtremeValue(μ, σ, ξ)
Обобщенное распределение экстремального значения с параметром формы ξ
, масштабом σ
и местоположением μ
имеет следующую функцию плотности вероятности.
для
GeneralizedExtremeValue(μ, σ, ξ) # Обобщенное распределение Парето с формой ξ, масштабом σ и местоположением μ.
params(d) # Возвращает параметры, то есть (μ, σ, ξ)
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть σ
shape(d) # Возвращает параметр формы, то есть ξ (иногда называется c)
Внешние ссылки
#
Distributions.GeneralizedPareto
— Type
GeneralizedPareto(μ, σ, ξ)
Обобщенное распределение Парето (GPD) с параметром формы ξ
, масштабом σ
и местоположением μ
имеет следующую функцию плотности вероятности.
GeneralizedPareto() # GPD с единичной формой и единичным масштабом, то есть GeneralizedPareto(0, 1, 1)
GeneralizedPareto(ξ) # GPD с формой ξ и единичным масштабом, то есть GeneralizedPareto(0, 1, ξ)
GeneralizedPareto(σ, ξ) # GPD с формой ξ и масштабом σ, то есть GeneralizedPareto(0, σ, ξ)
GeneralizedPareto(μ, σ, ξ) # GPD с формой ξ, масштабом σ и местоположением μ.
params(d) # Возвращает параметры, то есть (μ, σ, ξ)
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть σ
shape(d) # Возвращает параметр формы, то есть ξ
Внешние ссылки
#
Distributions.Gumbel
— Type
Gumbel(μ, θ)
Распределение Гамбела (максимумов) с местоположением μ
и масштабом θ
имеет следующую функцию плотности вероятности.
Gumbel() # Распределение Гамбела с нулевым местоположением и единичным масштабом, то есть Gumbel(0, 1)
Gumbel(μ) # Распределение Гамбела с местоположением μ и единичным масштабом, то есть Gumbel(μ, 1)
Gumbel(μ, θ) # Распределение Гамбела с местоположением μ и масштабом θ
params(d) # Возвращает параметры, то есть (μ, θ)
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
#
Distributions.InverseGamma
— Type
InverseGamma(α, θ)
Обратное гамма-распределение с параметром формы α
и масштабом θ
имеет следующую функцию плотности вероятности.
Оно связано с распределением Gamma
: если
InverseGamma() # Обратное гамма-распределение с единичной формой и единичным масштабом, то есть InverseGamma(1, 1)
InverseGamma(α) # Обратное гамма-распределение с формой α и единичным масштабом, то есть InverseGamma(α, 1)
InverseGamma(α, θ) # Обратное гамма-распределение с формой α и масштабом θ
params(d) # Возвращает параметры, то есть (α, θ)
shape(d) # Возвращает параметр формы, то есть α
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
#
Distributions.InverseGaussian
— Type
InverseGaussian(μ,λ)
Обратное распределение Гаусса со средним значением μ
и формой λ
имеет следующую функцию плотности вероятности.
InverseGaussian() # Обратное распределение Гаусса с единичным средним значением и единичной формой, то есть InverseGaussian(1, 1)
InverseGaussian(μ), # Обратное распределение Гаусса со средним значением μ и единичной формой, то есть InverseGaussian(μ, 1)
InverseGaussian(μ, λ) # Обратное распределение Гаусса со средним значением μ и формой λ
params(d) # Возвращает параметры, то есть (μ, λ)
mean(d) # Возвращает параметр среднего значения, то есть μ
shape(d) # Возвращает параметр формы, то есть λ
Внешние ссылки
#
Distributions.JohnsonSU
— Type
JohnsonSU(ξ, λ, γ, δ)
Если
где
JohnsonSU() # Эквивалентно JohnsonSU(0, 1, 0, 1)
JohnsonSU(ξ, λ, γ, δ) # S_U-распределение Джонсона с параметрами ξ, λ, γ и δ
params(d) # Возвращает параметры, то есть (ξ, λ, γ, δ)
shape(d) # Возвращает параметр формы, то есть ξ
scale(d) # Возвращает параметр масштаба, то есть λ
Внешние ссылки
#
Distributions.Kolmogorov
— Type
Kolmogorov()
Распределение Колмогорова, определяемое как
где
#
Distributions.KSDist
— Type
KSDist(n)
Распределение статистики Колмогорова-Смирнова (двусторонней)
#
Distributions.KSOneSided
— Type
KSOneSided(n)
Распределение односторонней статистики для теста Колмогорова-Смирнова:
#
Distributions.Kumaraswamy
— Type
Kumaraswamy(a, b)
Распределение Кумарасвами с параметрами формы a > 0
и b > 0
имеет следующую функцию плотности вероятности.
Оно связано с бета-распределением следующим тождеством: если
Внешние ссылки
Ссылки
-
П. Кумарасвами (Kumaraswamy, P.) (1980), A generalized probability density function for double-bounded random processes. Journal of Hydrology. 46(1-2), стр. 79—88.
#
Distributions.Laplace
— Type
Laplace(μ,θ)
Распределение Лапласа с местоположением μ
и масштабом θ
имеет следующую функцию плотности вероятности.
Laplace() # Распределение Лапласа с нулевым местоположением и единичным масштабом, то есть Laplace(0, 1)
Laplace(μ) # Распределение Лапласа с местоположением μ и единичным масштабом, то есть Laplace(μ, 1)
Laplace(μ, θ) # Распределение Лапласа с местоположением μ и масштабом θ
params(d) # Возвращает параметры, то есть (μ, θ)
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
#
Distributions.Levy
— Type
Levy(μ, σ)
Распределение Леви с местоположением μ
и масштабом σ
имеет следующую функцию плотности вероятности.
Levy() # Распределение Леви с нулевым местоположением и единичным масштабом, то есть Levy(0, 1)
Levy(μ) # Распределение Леви с местоположением μ и единичным масштабом, то есть Levy(μ, 1)
Levy(μ, σ) # Распределение Леви с местоположением μ и масштабом σ
params(d) # Возвращает параметры, то есть (μ, σ)
location(d) # Возвращает параметр местоположения, то есть μ
Внешние ссылки
#
Distributions.Lindley
— Type
Lindley(θ)
Однопараметрическое распределение Линдли с формой θ > 0
имеет следующую функцию плотности вероятности.
Оно было впервые описано Линдли (Lindley)[1] и более подробно изучено Гитани (Ghitany) и др. [2] Обратите внимание, что Lindley(θ)
представляет собой комбинацию Exponential(θ)
и Gamma(2, θ)
с соответствующими весами p = θ/(1 + θ)
и 1 - p
.
#
Distributions.Logistic
— Type
Logistic(μ,θ)
Логистическое распределение с местоположением μ
и масштабом θ
имеет следующую функцию плотности вероятности.
Logistic() # Логистическое распределение с нулевым местоположением и единичным масштабом, то есть Logistic(0, 1)
Logistic(μ) # Логистическое распределение с местоположением μ и единичным масштабом, то есть Logistic(μ, 1)
Logistic(μ, θ) # Логистическое распределение с местоположением μ и масштабом θ
params(d) # Возвращает параметры, то есть (μ, θ)
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
#
Distributions.LogitNormal
— Type
LogitNormal(μ,σ)
Логистически нормальное распределение — это распределение случайной величины, логит которой имеет распределение Normal
. И наоборот, при применении логистической функции к случайной величине, распределенной по закону Normal, получившаяся случайная величина имеет логистически нормальное распределение.
Если
Функция плотности вероятности имеет следующий вид:
где логит-функция имеет вид
LogitNormal() # Логистически нормальное распределение с нулевым логистически средним значением и единичным масштабом
LogitNormal(μ) # Логистически нормальное распределение с логистически средним значением μ и единичным масштабом
LogitNormal(μ, σ) # Логистически нормальное распределение с логистически средним значением μ и масштабом σ
params(d) # Возвращает параметры, то есть (μ, σ)
median(d) # Возвращает медиану, то есть logistic(μ)
Следующие свойства не имеют аналитического решения, но лишь числовые аппроксимации. Во избежание зависимости от пакетов для оптимизации числовых вычислений в настоящее время они не реализованы.
mean(d)
var(d)
std(d)
mode(d)
По той же причине не реализованы коэффициент асимметрии, куртозис и энтропия.
Внешние ссылки
#
Distributions.LogNormal
— Type
LogNormal(μ,σ)
Логнормальное распределение — это распределение показательной функции случайной величины Normal
: если
LogNormal() # Логнормальное распределение с нулевым среднелогарифмическим значением и единичным масштабом
LogNormal(μ) # Логнормальное распределение со среднелогарифмическим значением mu и единичным масштабом
LogNormal(μ, σ) # Логнормальное распределение со среднелогарифмическим значением mu и масштабом sig
params(d) # Возвращает параметры, то есть (μ, σ)
meanlogx(d) # Возвращает среднее значение log(X), то есть μ
varlogx(d) # Возвращает дисперсию log(X), то есть σ^2
stdlogx(d) # Возвращает среднеквадратичное отклонение log(X), то есть σ
Внешние ссылки
#
Distributions.LogUniform
— Type
LogUniform(a,b)
Положительная случайная величина X
является логарифмически равномерной с параметрами a
и b
, если логарифм X
соответствует Uniform(log(a), log(b))
. Логарифмически равномерное распределение также известно как обратное.
LogUniform(1,10)
Внешние ссылки
#
Distributions.NoncentralBeta
— Type
NoncentralBeta(α, β, λ)
Нецентральное бета-распределение с параметрами формы α > 0
и β > 0
и параметром нецентральности λ >= 0
.
#
Distributions.NoncentralChisq
— Type
NoncentralChisq(ν, λ)
Нецентральное распределение хи-квадрат с ν
степенями свободы и параметром нецентральности λ
имеет следующую функцию плотности вероятности.
Это распределение суммы квадратов ν
независимых случайных величин, распределенных по закону Normal
, с отдельными средними значениями
NoncentralChisq(ν, λ) # Нецентральное распределение хи-квадрат с ν степенями свободы и параметром нецентральности λ
params(d) # Возвращает параметры, то есть (ν, λ)
Внешние ссылки
#
Distributions.NoncentralF
— Type
NoncentralF(ν1, ν2, λ)
Нецентральное F-распределение с ν1 > 0
и ν2 > 0
степенями свободы и параметром нецентральности λ >= 0
.
#
Distributions.NoncentralT
— Type
NoncentralT(ν, λ)
Нецентральное t-распределение Стьюдента с v > 0
степенями свободы и параметром нецентральности λ
.
#
Distributions.Normal
— Type
Normal(μ,σ)
Нормальное распределение со средним значением μ
и среднеквадратичным отклонением σ≥0
имеет следующую функцию плотности вероятности.
Обратите внимание: если σ == 0
, то распределение представляет собой массу точек, сосредоточенных в μ
. Хотя, строго говоря, это распределение не является непрерывным, оно может выступать в качестве такового на случай переполнения значения σ
снизу, и функции определяются путем взятия точечного предела как
Normal() # стандартное нормальное распределение с нулевым средним значением и единичной дисперсией
Normal(μ) # Нормальное распределение со средним значением μ и единичной дисперсией
Normal(μ, σ) # Нормальное распределение со средним значением μ и дисперсией σ^2
params(d) # Возвращает параметры, то есть (μ, σ)
mean(d) # Возвращает среднее значение, то есть μ
std(d) # Возвращает среднеквадратичное отклонение, то есть σ
Внешние ссылки
#
Distributions.NormalCanon
— Type
NormalCanon(η, λ)
Каноническая параметризация нормального распределения с каноническими параметрами η
и λ
.
Два канонических параметра нормального распределения
#
Distributions.NormalInverseGaussian
— Type
NormalInverseGaussian(μ,α,β,δ)
Нормально-обратное распределение Гаусса с местоположением μ
, тяжестью хвоста α
, параметром асимметрии β
и масштабом δ
имеет следующую функцию плотности вероятности:
где
Внешние ссылки
#
Distributions.Pareto
— Type
Pareto(α,θ)
Распределение Парето с формой α
и масштабом θ
имеет следующую функцию плотности вероятности.
Pareto() # Распределение Парето с единичной формой и единичным масштабом, то есть Pareto(1, 1)
Pareto(α) # Распределение Парето с формой α и единичным масштабом, то есть Pareto(α, 1)
Pareto(α, θ) # Распределение Парето с формой α и масштабом θ
params(d) # Возвращает параметры, то есть (α, θ)
shape(d) # Возвращает параметр формы, то есть α
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
#
Distributions.PGeneralizedGaussian
— Type
PGeneralizedGaussian(μ, α, p)
p-обобщенное распределение Гаусса, более известное как экспоненциальная степень или обобщенное нормальное распределение, с масштабом α
, местоположением μ
и формой p
имеет следующую функцию плотности вероятности.
p-обобщенное распределение Гаусса (GGD) — это параметрическое распределение, которое включает в себя нормальное распределение (p = 2
) и распределение Лапласа (p = 1
) как особые случаи. При p → ∞
это распределение стремится к равномерному распределению в интервале [μ - α, μ + α]
.
PGeneralizedGaussian() # GGD с местоположением 0, масштабом √2 и формой 2 (нормальное распределение)
PGeneralizedGaussian(μ, α, p) # GGD с местоположением μ, масштабом α и формой p
params(d) # Возвращает параметры, то есть (μ, α, p)
location(d) # Возвращает параметр местоположения μ
scale(d) # Возвращает параметр масштаба α
shape(d) # Возвращает параметр формы p
Внешние ссылки
#
Distributions.Rayleigh
— Type
Rayleigh(σ)
Распределение Рэлея с масштабом σ
имеет следующую функцию плотности вероятности.
Оно связано с распределением Normal
той особенностью, что если
Rayleigh() # Распределение Рэлея с единичным масштабом, то есть Rayleigh(1)
Rayleigh(σ) # Распределение Рэлея с масштабом σ
params(d) # Возвращает параметры, то есть (σ,)
scale(d) # Возвращает параметр масштаба, то есть σ
Внешние ссылки
#
Distributions.Rician
— Type
Rician(ν, σ)
Распределение Райса с параметрами ν
и σ
имеет следующую функцию плотности вероятности.
Если вместо этого заданы параметры формы и масштаба K
и Ω
, параметры ν
и σ
можно вычислить на их основе:
Rician() # Распределение Райса с параметрами ν=0 и σ=1
Rician(ν, σ) # Распределение Райса с параметрами ν и σ
params(d) # Возвращает параметры, то есть (ν, σ)
shape(d) # Возвращает параметр формы K = ν²/2σ²
scale(d) # Возвращает параметр масштаба Ω = ν² + 2σ²
Внешние ссылки:
#
Distributions.Semicircle
— Type
Semicircle(r)
Полукруговое распределение Вигнера с параметром радиуса r
имеет следующую функцию плотности вероятности.
Semicircle(r) # Полукруговое распределение Вигнера с радиусом r
params(d) # Возвращает параметр радиуса, то есть (r,)
Внешние ссылки
#
Distributions.SkewedExponentialPower
— Type
SkewedExponentialPower(μ, σ, p, α)
Асимметричное экспоненциальное показательное распределение с местоположением μ
, масштабом σ
, формой p
и коэффициентом асимметрии α
имеет следующую функцию плотности вероятности [1].
Асимметричное экспоненциальное показательное распределение (SEPD) включает в себя распределение Лапласа (
[1] Чжи Д. (Zhy, D.) и Зинде-Уолш В. (V. Zinde-Walsh) (2009). Properties and estimation of asymmetric exponential power distribution. Journal of econometrics, 148(1):86-96, 2009.
SkewedExponentialPower() # SEPD с формой 2, масштабом 1, местоположением 0 и коэффициентом асимметрии 0,5 (стандартное нормальное распределение)
SkewedExponentialPower(μ, σ, p, α) # SEPD с местоположением μ, масштабом σ, формой p и коэффициентом асимметрии α
SkewedExponentialPower(μ, σ, p) # SEPD с местоположением μ, масштабом σ, формой p и коэффициентом асимметрии 0,5 (экспоненциальное показательное распределение)
SkewedExponentialPower(μ, σ) # SEPD с местоположением μ, масштабом σ, формой 2 и коэффициентом асимметрии 0,5 (нормальное распределение)
SkewedExponentialPower(μ) # SEPD с местоположением μ, масштабом 1, формой 2 и коэффициентом асимметрии 0,5 (нормальное распределение)
params(d) # Возвращает параметры, то есть (μ, σ, p, α)
shape(d) # Возвращает параметр формы, то есть p
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть σ
#
Distributions.SkewNormal
— Type
SkewNormal(ξ, ω, α)
Несимметричное нормальное распределение — это непрерывное вероятностное распределение, являющееся обобщением нормального распределения для случая ненулевого коэффициента асимметрии. Для данных местоположения ξ
, масштаба ω
и формы α
оно имеет следующую функцию плотности вероятности:
Внешние ссылки
#
Distributions.StudentizedRange
— Type
StudentizedRange(ν, k)
Распределение стьюдентизированного размаха имеет следующую функцию плотности вероятности:
где
StudentizedRange(ν, k) # Распределение стьюдентизированного размаха с параметрами ν и k
params(d) # Возвращает параметры, то есть (ν, k)
Внешние ссылки
#
Distributions.SymTriangularDist
— Type
SymTriangularDist(μ, σ)
Симметричное треугольное распределение с местоположением μ
и масштабом σ
имеет следующую функцию плотности вероятности.
SymTriangularDist() # Симметричное треугольное распределение с нулевым местоположением и единичным масштабом
SymTriangularDist(μ) # Симметричное треугольное распределение с местоположением μ и единичным масштабом
SymTriangularDist(μ, s) # Симметричное треугольное распределение с местоположением μ и масштабом σ
params(d) # Возвращает параметры, то есть (μ, σ)
location(d) # Возвращает параметр местоположения, то есть μ
scale(d) # Возвращает параметр масштаба, то есть σ
#
Distributions.TDist
— Type
TDist(ν)
t-распределение Стьюдента с ν
степенями свободы имеет следующую функцию плотности вероятности.
TDist(d) # t-распределение с ν степенями свободы
params(d) # Возвращает параметры, то есть (ν,)
dof(d) # Возвращает количество степеней свободы, то есть ν
Внешние ссылки
#
Distributions.TriangularDist
— Type
TriangularDist(a,b,c)
Треугольное распределение с нижним пределом a
, верхним пределом b
и режимом c
имеет следующую функцию плотности вероятности.
TriangularDist(a, b) # Треугольное распределение с нижним пределом a, верхним пределом b и режимом (a+b)/2
TriangularDist(a, b, c) # Треугольное распределение с нижним пределом a, верхним пределом b и режимом c
params(d) # Возвращает параметры, то есть (a, b, c)
minimum(d) # Возвращает нижнюю границу, то есть a
maximum(d) # Возвращает верхнюю границу, то есть b
mode(d) # Возвращает режим, то есть c
Внешние ссылки
#
Distributions.Triweight
— Type
Triweight(μ, σ)
#
Distributions.Uniform
— Type
Uniform(a,b)
Непрерывное равномерное распределение на интервале
Uniform() # Равномерное распределение на интервале [0, 1]
Uniform(a, b) # Равномерное распределение на интервале [a, b]
params(d) # Возвращает параметры, то есть (a, b)
minimum(d) # Возвращает нижнюю границу, то есть a
maximum(d) # Возвращает верхнюю границу, то есть b
location(d) # Возвращает параметр местоположения, то есть a
scale(d) # Возвращает параметр масштаба, то есть b – a
Внешние ссылки
#
Distributions.VonMises
— Type
VonMises(μ, κ)
Распределение фон Мизеса со средним значением μ
и концентрацией κ
имеет следующую функцию плотности вероятности.
VonMises() # Распределение фон Мизеса с нулевым средним значением и единичной концентрацией
VonMises(κ) # Распределение фон Мизеса с нулевым средним значением и концентрацией κ
VonMises(μ, κ) # Распределение фон Мизеса со средним значением μ и концентрацией κ
Внешние ссылки
#
Distributions.Weibull
— Type
Weibull(α,θ)
Распределение Вейбулла с формой α
и масштабом θ
имеет следующую функцию плотности вероятности.
Weibull() # Распределение Вейбулла с единичной формой и единичным масштабом, то есть Weibull(1, 1)
Weibull(α) # Распределение Вейбулла с формой α и единичным масштабом, то есть Weibull(α, 1)
Weibull(α, θ) # Распределение Вейбулла с формой α и масштабом θ
params(d) # Возвращает параметры, то есть (α, θ)
shape(d) # Возвращает параметр формы, то есть α
scale(d) # Возвращает параметр масштаба, то есть θ
Внешние ссылки
Дискретные распределения
#
Distributions.Bernoulli
— Type
Bernoulli(p)
Распределение Бернулли параметризуется по вероятности успеха p
, которая принимает значение 1 с вероятностью p
и 0 с вероятностью 1-p
.
Bernoulli() # Распределение Бернулли с p = 0,5
Bernoulli(p) # Распределение Бернулли с вероятностью успеха p
params(d) # Возвращает параметры, то есть (p,)
succprob(d) # Возвращает вероятность успеха, то есть p
failprob(d) # Возвращает вероятность неудачи, то есть 1 – p
Внешние ссылки:
#
Distributions.BernoulliLogit
— Type
BernoulliLogit(logitp=0.0)
Распределение Бернулли, параметризуемое по логиту logitp = logit(p) = log(p/(1-p))
вероятности успеха p
.
Внешние ссылки:
См. также описание Bernoulli
.
#
Distributions.BetaBinomial
— Type
BetaBinomial(n,α,β)
Бета-биномиальное распределение — это составное распределение Binomial
, вероятность успеха которого p
распределяется по закону Beta
. Оно имеет три параметра: n
(количество испытаний) и два параметра формы α
и β
.
BetaBinomial(n, α, β) # Бета-биномиальное распределение с n испытаниями и параметрами формы α, β
params(d) # Возвращает параметры, то есть (n, α, β)
ntrials(d) # Возвращает количество испытаний, то есть n
Внешние ссылки:
#
Distributions.Binomial
— Type
Binomial(n,p)
Биномиальное распределение описывает количество успешных исходов в последовательности независимых испытаний. Оно имеет два параметра: количество испытаний n
и вероятность успеха в отдельном испытании p
со следующим распределением:
Binomial() # Биномиальное распределение с n = 1 и p = 0,5
Binomial(n) # Биномиальное распределение для n испытаний с вероятностью успеха p = 0,5
Binomial(n, p) # Биномиальное распределение для n испытаний с вероятностью успеха p
params(d) # Возвращает параметры, то есть (n, p)
ntrials(d) # Возвращает количество испытаний, то есть n
succprob(d) # Возвращает вероятность успеха, то есть p
failprob(d) # Возвращает вероятность неудачи, то есть 1 – p
Внешние ссылки:
#
Distributions.Categorical
— Type
Categorical(p)
Категориальное распределение параметризуется по вектору вероятностей p
(длиной K
).
Categorical(p) # Категориальное распределение с вектором вероятностей p
params(d) # Возвращает параметры, то есть (p,)
probs(d) # Возвращает вектор вероятностей, то есть p
ncategories(d) # Возвращает количество категорий, то есть K
Здесь p
должно быть вещественным вектором, все компоненты которого неотрицательные, а их сумма равна единице.
Примечание. Входной вектор p
напрямую используется как поле создаваемого распределения без копирования.
Categorical
— это просто псевдоним типа, описывающий особый случай распределения DiscreteNonParametric
, поэтому неспециализированные методы, определенные для DiscreteNonParametric
, применимы и к Categorical
.
Внешние ссылки:
#
Distributions.Dirac
— Type
Dirac(x)
Распределение Дирака параметризуется по единственному значению x
и принимает его с вероятностью 1.
Dirac(2.5) # Распределение Дирака со значением x = 2,5
Внешние ссылки:
#
Distributions.DiscreteUniform
— Type
DiscreteUniform(a,b)
Дискретное равномерное распределение — это равномерное распределение по непрерывной последовательности целых чисел от a
до b
включительно.
DiscreteUniform(a, b) # равномерное распределение по последовательности {a, a+1, ..., b}
params(d) # Возвращает параметры, то есть (a, b)
span(d) # Возвращает интервал носителя, то есть (b – a + 1)
probval(d) # Возвращает значение вероятности, то есть 1 / (b – a + 1)
minimum(d) # Возвращает a
maximum(d) # Возвращает b
Внешние ссылки
#
Distributions.DiscreteNonParametric
— Type
DiscreteNonParametric(xs, ps)
Дискретное непараметрическое распределение явным образом определяет произвольную вероятностную функцию массы в виде списка вещественных значений носителя и соответствующих им вероятностей:
d = DiscreteNonParametric(xs, ps)
params(d) # Возвращает параметры, то есть (xs, ps)
support(d) # Возвращает отсортированный вектор AbstractVector, описывающий носитель (xs) распределения
probs(d) # Возвращает вектор вероятностей (ps), связанных с носителем
Внешние ссылки
#
Distributions.Geometric
— Type
Geometric(p)
Геометрическое распределение описывает количество неудачных исходов до первого успешного в последовательности независимых испытаний Бернулли с вероятностью успеха p
.
Geometric() # Геометрическое распределение с вероятностью успеха 0,5
Geometric(p) # Геометрическое распределение с вероятностью успеха p
params(d) # Возвращает параметры, то есть (p,)
succprob(d) # Возвращает вероятность успеха, то есть p
failprob(d) # Возвращает вероятность неудачи, то есть 1 – p
Внешние ссылки
#
Distributions.Hypergeometric
— Type
Hypergeometric(s, f, n)
Гипергеометрическое распределение описывает количество успешных исходов в n
выборках без замены из конечной совокупности, содержащей s
успешных исходов и f
неудачных.
Hypergeometric(s, f, n) # Гипергеометрическое распределение для совокупности с
# s успешными исходами и f неудачными и последовательности из n испытаний.
params(d) # Возвращает параметры, то есть (s, f, n)
Внешние ссылки
#
Distributions.NegativeBinomial
— Type
NegativeBinomial(r,p)
Отрицательное биномиальное распределение описывает количество неудачных исходов до r
-го успешного в последовательности независимых испытаний Бернулли. Оно параметризуется по количеству успешных исходов r
и вероятности успеха в отдельном испытании p
.
Распределение остается вполне определенным для любого положительного r
, в каковом случае верно следующее:
NegativeBinomial() # Отрицательное биномиальное распределение с r = 1 и p = 0,5
NegativeBinomial(r, p) # Отрицательное биномиальное распределение с r успешными исходами и вероятностью успеха p
params(d) # Возвращает параметры, то есть (r, p)
succprob(d) # Возвращает вероятность успеха, то есть p
failprob(d) # Возвращает вероятность неудачи, то есть 1 – p
Внешние ссылки:
#
Distributions.Poisson
— Type
Poisson(λ)
Распределение Пуассона описывает количество независимых событий, происходящих за единичный интервал времени, при средней частоте возникновения λ
.
Poisson() # Распределение Пуассона с параметром частоты 1
Poisson(lambda) # Распределение Пуассона с параметром частоты lambda
params(d) # Возвращает параметры, то есть (λ,)
mean(d) # Возвращает среднюю частоту наступления, то есть λ
Внешние ссылки:
#
Distributions.PoissonBinomial
— Type
PoissonBinomial(p)
Биномиальное распределение Пуассона описывает количество успешных исходов в последовательности независимых испытаний, каждое из которых имеет собственную вероятность успеха. Оно параметризуется по вектору p
(длиной p[i]
соответствует вероятности успеха i
-го испытания.
где
PoissonBinomial(p) # Биномиальное распределение Пуассона с вектором вероятностей успеха p
params(d) # Возвращает параметры, то есть (p,)
succprob(d) # Возвращает вектор вероятностей успеха, то есть p
failprob(d) # Возвращает вектор вероятностей неудачи, то есть 1 – p
Внешние ссылки:
#
Distributions.Skellam
— Type
Skellam(μ1, μ2)
Распределение Скеллама описывает разность двух независимых величин Poisson
с вероятностями μ1
и μ2
соответственно.
где
Skellam(μ1, μ2) # Распределение Скеллама для разности двух величин, распределенных по закону Пуассона,
# с математическим ожиданием μ1 и μ2 соответственно.
params(d) # Возвращает параметры, то есть (μ1, μ2)
Внешние ссылки:
#
Distributions.Soliton
— Type
Soliton(K::Integer, M::Integer, δ::Real, atol::Real=0) <: Distribution{Univariate, Discrete}
Робастное распределение солитона длиной K
с режимом M
(то есть местоположением пика робастного компонента), вероятностью неудачи процесса расслоения δ
и минимальной ненулевой вероятностной мерой atol
. В частности, степени i
, для которых pdf(Ω, i)<atol
, задаются равными 0
. При atol=0
получается обычное робастное распределение солитона.
Soliton(K, M, δ) # Робастное распределение солитона (с atol=0)
Soliton(K, M, δ, atol) # Робастное распределение солитона с минимальной ненулевой вероятностной мерой atol
params(Ω) # Возвращает параметры, то есть (K, M, δ, atol)
degrees(Ω) # Возвращает вектор, состоящий из степеней с ненулевой вероятностной мерой
pdf(Ω, i) # Вычисляет pdf при i
cdf(Ω, i) # Вычисляет pdf при i
rand(Ω) # Выборка из Ω
rand(Ω, n) # Делает n выборок из Ω
Внешние ссылки: