logninv

Логарифмически нормальная обратная кумулятивная функция распределения

Синтаксис

x = logninv(p)
x = logninv(p,mu)
x = logninv(p,mu,sigma)
[x,xLo,xUp] = logninv(p,mu,sigma,pCov)
[x,xLo,xUp] = logninv(p,mu,sigma,pCov,alpha)

Описание

x = logninv(p) возвращает инверсию стандартной логарифмически нормальной кумулятивной функции распределения (cdf), оцененный в значениях вероятности в p. В стандартном логарифмически нормальном распределении среднее и стандартное отклонение логарифмических значений 0 и 1, соответственно.

x = logninv(p,mu) возвращает инверсию логарифмически нормального cdf с параметрами распределения mu (среднее значение логарифмических значений) и 1 (стандартное отклонение логарифмических значений), оцененный в значениях вероятности в p.

пример

x = logninv(p,mu,sigma) возвращает инверсию логарифмически нормального cdf с параметрами распределения mu (среднее значение логарифмических значений) и sigma (стандартное отклонение логарифмических значений), оцененный в значениях вероятности в p.

[x,xLo,xUp] = logninv(p,mu,sigma,pCov) также возвращает 95% доверительных границ [xLo, xUp] x с помощью предполагаемых параметров (mu и sigma) и их ковариационная матрица pCov.

[x,xLo,xUp] = logninv(p,mu,sigma,pCov,alpha) задает доверительный уровень для доверительного интервала [xLo, xUp], чтобы быть % 100(1–alpha).

Примеры

свернуть все

Вычислите инверсию cdf значений, оцененных в значениях вероятности в p для логарифмически нормального распределения со средним mu и стандартным отклонением sigma.

p = 0.005:0.01:0.995;
mu = 1;
sigma = 0.5;
x = logninv(p,mu,sigma);

Постройте инверсию cdf.

plot(p,x)
grid on
xlabel('p');
ylabel('x');

Найдите оценки наибольшего правдоподобия (MLEs) логарифмически нормальных параметров распределения, и затем найдите доверительный интервал соответствующей инверсии cdf значением.

Сгенерируйте 1 000 случайных чисел от логарифмически нормального распределения с параметрами 5 и 2.

rng('default') % For reproducibility
n = 1000; % Number of samples
x = lognrnd(5,2,[n,1]);

Найдите MLEs для параметров распределения (среднее и стандартное отклонение логарифмических значений) при помощи mle.

phat = mle(x,'distribution','LogNormal')
phat = 1×2

    4.9347    1.9969

muHat = phat(1);
sigmaHat = phat(2);

Оцените ковариацию параметров распределения при помощи lognlike. Функциональный lognlike возвращает приближение в асимптотическую ковариационную матрицу, если вы передаете MLEs, и выборки раньше оценивали MLEs.

[~,pCov] = lognlike(phat,x)
pCov = 2×2

    0.0040   -0.0000
   -0.0000    0.0020

Найдите инверсию cdf значением в 0,5 и его 99%-й доверительный интервал.

[x,xLo,xUp] = logninv(0.5,muHat,sigmaHat,pCov,0.01)
x = 139.0364
xLo = 118.1643
xUp = 163.5953

x является инверсией cdf значение с помощью логарифмически нормального распределения с параметрами muHat и sigmaHat. Интервал [xLo,xUp] является 99%-м доверительным интервалом инверсии cdf значение, оцененное в 0,5, рассматривая неуверенность в muHat и sigmaHat с помощью pCov. 99% доверительного интервала означают вероятность, что [xLo,xUp] содержит истинную инверсию cdf, значение 0.99.

Входные параметры

свернуть все

Значения вероятности, в которых можно оценить инверсию cdf (icdf), заданный как скалярное значение или массив скалярных значений, где каждый элемент находится в области значений [0,1].

Если вы задаете pCov, чтобы вычислить доверительный интервал [xLo,xUp], то p должен быть скалярным значением.

Чтобы оценить icdf в нескольких значениях, задайте p с помощью массива. Чтобы оценить icdfs нескольких дистрибутивов, задайте mu и sigma с помощью массивов. Если один или несколько входных параметров, p, mu и sigma являются массивами, то размеры массивов должны быть тем же самым. В этом случае logninv расширяет каждый скалярный вход в постоянный массив, одного размера как входные параметры массивов. Каждый элемент в x является icdf значением распределения, заданного соответствующими элементами в mu и sigma, оцененном в соответствующем элементе в p.

Пример: [0.1,0.5,0.9]

Типы данных: single | double

Среднее значение логарифмических значений для логарифмически нормального распределения, заданного как скалярное значение или массив скалярных значений.

Если вы задаете pCov, чтобы вычислить доверительный интервал [xLo,xUp], то mu должен быть скалярным значением.

Чтобы оценить icdf в нескольких значениях, задайте p с помощью массива. Чтобы оценить icdfs нескольких дистрибутивов, задайте mu и sigma с помощью массивов. Если один или несколько входных параметров, p, mu и sigma являются массивами, то размеры массивов должны быть тем же самым. В этом случае logninv расширяет каждый скалярный вход в постоянный массив, одного размера как входные параметры массивов. Каждый элемент в x является icdf значением распределения, заданного соответствующими элементами в mu и sigma, оцененном в соответствующем элементе в p.

Пример: [0 1 2; 0 1 2]

Типы данных: single | double

Стандартное отклонение логарифмических значений для логарифмически нормального распределения, заданного как значение положительной скалярной величины или массив значений положительной скалярной величины.

Если вы задаете pCov, чтобы вычислить доверительный интервал [xLo,xUp], то sigma должен быть скалярным значением.

Чтобы оценить icdf в нескольких значениях, задайте p с помощью массива. Чтобы оценить icdfs нескольких дистрибутивов, задайте mu и sigma с помощью массивов. Если один или несколько входных параметров, p, mu и sigma являются массивами, то размеры массивов должны быть тем же самым. В этом случае logninv расширяет каждый скалярный вход в постоянный массив, одного размера как входные параметры массивов. Каждый элемент в x является icdf значением распределения, заданного соответствующими элементами в mu и sigma, оцененном в соответствующем элементе в p.

Пример: [1 1 1; 2 2 2]

Типы данных: single | double

Ковариация оценок mu и sigma, заданный как матрица 2 на 2.

Если вы задаете pCov, чтобы вычислить доверительный интервал [xLo,xUp], то p, mu и sigma должны быть скалярными значениями.

Можно оценить оценки наибольшего правдоподобия mu и sigma при помощи mle, и оценить ковариацию mu и sigma при помощи lognlike. Для примера смотрите Доверительный интервал Обратного Логарифмически нормального cdf Значения.

Типы данных: single | double

Уровень значения для доверительного интервала, заданного как скаляр в области значений (0,1). Доверительный уровень является % 100(1–alpha), где alpha является вероятностью, что доверительный интервал не содержит истинное значение.

Пример: 0.01

Типы данных: single | double

Выходные аргументы

свернуть все

значения icdf, оцененные в значениях вероятности в p, возвратились как скалярное значение или массив скалярных значений. x одного размера как p, mu и sigma после любого необходимого скалярного расширения. Каждый элемент в x является icdf значением распределения, заданного соответствующими элементами в mu и sigma, оцененном в соответствующем элементе в p.

Более низкая доверительная граница для x, возвращенного как скалярное значение или массив скалярных значений. xLo имеет тот же размер как x.

Верхняя доверительная граница для x, возвращенного как скалярное значение или массив скалярных значений. xUp имеет тот же размер как x.

Больше о

свернуть все

Логарифмически нормальное распределение

Логарифмически нормальное распределение является распределением вероятностей, логарифм которого имеет нормальное распределение.

Логарифмически нормальная обратная функция задана с точки зрения логарифмически нормального cdf как

x=F1(p|μ,σ)={x:F(x|μ,σ)=p}

где

p=F(x|μ,σ)=1σ2π0x1texp{(журналtμ)22σ2}dt, for дляx>0.

Алгоритмы

  • Функциональный logninv использует обратную дополнительную функцию ошибок erfcinv. Отношение между logninv и erfcinv

    logninv(p,0,1)=exp(2 erfcinv(2p)).

    Обратная дополнительная функция ошибок erfcinv(x) задан как erfcinv(erfc(x))=x и дополнительная функция ошибок erfc(x), задана как

    erfc(x)=1erf(x)=2πxet2dt.

  • Функция logninv вычисляет доверительные границы для x при помощи метода дельты. log(logninv(p,mu,sigma)) эквивалентен   mu + sigma*log(logninv(p,0,1)). Поэтому функция logninv оценивает отклонение   mu + sigma*log(logninv(p,0,1)) с помощью ковариационной матрицы mu и sigma методом дельты, и находит доверительные границы с помощью оценок этого отклонения. Вычисленные границы дают приблизительно желаемый доверительный уровень, когда вы оцениваете mu, sigma и pCov от больших выборок.

Альтернативная функциональность

  • logninv является функционально-специализированным к логарифмически нормальному распределению. Statistics and Machine Learning Toolbox™ также предлагает родовой функции icdf, который поддерживает различные распределения вероятностей. Чтобы использовать icdf, создайте распределение вероятностей LognormalDistribution, возражают и передают объект как входной параметр или задают имя распределения вероятностей и его параметры. Обратите внимание на то, что специфичный для распределения функциональный logninv быстрее, чем родовая функция icdf.

Ссылки

[1] Abramowitz, M. и я. А. Стегун. Руководство математических функций. Нью-Йорк: Дувр, 1964.

[2] Эванс, M., Н. Гастингс и Б. Пикок. Статистические Дистрибутивы. Хобокен, NJ: Wiley-межнаука, 2000. стр 102–105.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Представлено до R2006a