Main Content

logninv

対数正規累積分布逆関数

説明

x = logninv(p) は、p 内の確率値で評価した、標準対数正規分布の累積分布関数 (cdf) の逆関数を返します。標準対数正規分布では、対数値の平均が 0、標準偏差が 1 です。

x = logninv(p,mu) は、p 内の確率値で評価した、分布パラメーター mu (対数値の平均) および 1 (対数値の標準偏差) をもつ対数正規 cdf の逆関数を返します。

x = logninv(p,mu,sigma) は、p 内の確率値で評価した、分布パラメーター mu (対数値の平均) および sigma (対数値の標準偏差) をもつ対数正規 cdf の逆関数を返します。

[x,xLo,xUp] = logninv(p,mu,sigma,pCov) は、推定パラメーター (musigma) およびその共分散行列 pCov を使用して、x の 95% 信頼限界 [xLo,xUp] も返します。

[x,xLo,xUp] = logninv(p,mu,sigma,pCov,alpha) は、信頼区間 [xLo,xUp] の信頼水準が 100(1–alpha)% であることを指定します。

すべて折りたたむ

平均 mu および標準偏差 sigma をもつ対数正規分布について、p 内の確率値で評価した cdf の逆関数の値を計算します。

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

累積分布逆関数をプロットします。

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

Figure contains an axes object. The axes object with xlabel p, ylabel x contains an object of type line.

対数正規分布パラメーターの最尤推定量 (MLE) を求めてから、対応する cdf の逆関数の値について信頼区間を求めます。

パラメーター 5 および 2 をもつ対数正規分布から、1000 個の乱数を生成します。

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

mleを使用して、分布パラメーター (対数値の平均および標準偏差) の MLE を求めます。

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

    4.9347    1.9969

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

lognlike を使用して、分布パラメーターの共分散を推定します。関数 lognlike は、MLE がその MLE の推定に使用された標本と共に渡された場合、漸近共分散行列に対する近似を返します。

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

    0.0040   -0.0000
   -0.0000    0.0020

0.5 における cdf の逆関数の値およびその 99% 信頼区間を求めます。

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

x は、パラメーター muHat および sigmaHat をもつ対数正規分布を使用した cdf の逆関数の値です。区間 [xLo,xUp] は、0.5 で評価した cdf の逆関数の値の 99% 信頼区間であり、pCov を使用した場合の muHat および sigmaHat の不確実性を考慮しています。99% 信頼区間は、cdf の逆関数の真の値が [xLo,xUp] に含まれる確率が 0.99 であることを意味します。

入力引数

すべて折りたたむ

cdf の逆関数 (icdf) を評価する確率値。スカラー値、または各要素が範囲 [0,1] にあるスカラー値の配列を指定します。

信頼区間 [xLo,xUp] を計算するよう pCov に指定した場合、p はスカラー値でなければなりません。

複数の値で icdf を評価するには、配列を使用して p を指定します。複数の分布の icdf を評価するには、配列を使用して musigma を指定します。入力引数 pmu および sigma の 1 つ以上が配列である場合、配列のサイズは同じでなければなりません。この場合、logninv は配列入力と同じサイズの定数配列に各スカラー入力を拡張します。x の各要素は、p 内の対応する要素で評価された、mu および sigma 内の対応する要素によって指定された分布の icdf の値です。

例: [0.1,0.5,0.9]

データ型: single | double

対数正規分布の対数値の平均。スカラー値、またはスカラー値の配列を指定します。

信頼区間 [xLo,xUp] を計算するよう pCov に指定した場合、mu はスカラー値でなければなりません。

複数の値で icdf を評価するには、配列を使用して p を指定します。複数の分布の icdf を評価するには、配列を使用して musigma を指定します。入力引数 pmu および sigma の 1 つ以上が配列である場合、配列のサイズは同じでなければなりません。この場合、logninv は配列入力と同じサイズの定数配列に各スカラー入力を拡張します。x の各要素は、p 内の対応する要素で評価された、mu および sigma 内の対応する要素によって指定された分布の icdf の値です。

例: [0 1 2; 0 1 2]

データ型: single | double

対数正規分布の対数値の標準偏差。正のスカラー値、または正のスカラー値の配列を指定します。

信頼区間 [xLo,xUp] を計算するよう pCov に指定した場合、sigma はスカラー値でなければなりません。

複数の値で icdf を評価するには、配列を使用して p を指定します。複数の分布の icdf を評価するには、配列を使用して musigma を指定します。入力引数 pmu および sigma の 1 つ以上が配列である場合、配列のサイズは同じでなければなりません。この場合、logninv は配列入力と同じサイズの定数配列に各スカラー入力を拡張します。x の各要素は、p 内の対応する要素で評価された、mu および sigma 内の対応する要素によって指定された分布の icdf の値です。

例: [1 1 1; 2 2 2]

データ型: single | double

推定値 mu および sigma の共分散。2 行 2 列の行列を指定します。

pCov を指定して信頼区間 [xLo,xUp] を計算する場合、pmu および sigma はスカラー値でなければなりません。

musigma の最尤推定量は mle を使用して、musigma の共分散は lognlike を使用して推定できます。たとえば、対数正規分布 cdf の逆関数の値の信頼区間を参照してください。

データ型: single | double

信頼区間の有意水準。範囲 (0,1) のスカラーを指定します。信頼水準は 100(1–alpha)% です。alpha は、真の値が信頼区間に含まれない確率です。

例: 0.01

データ型: single | double

出力引数

すべて折りたたむ

p 内の確率値で評価した icdf の値。スカラー値、またはスカラー値の配列として返されます。x は、必要なスカラー拡張後の pmu および sigma と同じサイズになります。x の各要素は、p 内の対応する要素で評価された、mu および sigma 内の対応する要素によって指定された分布の icdf の値です。

x の信頼限界の下限。スカラー値、またはスカラー値の配列として返されます。xLox と同じサイズになります。

x の信頼限界の上限。スカラー値、またはスカラー値の配列として返されます。xUpx と同じサイズになります。

詳細

すべて折りたたむ

対数正規分布

対数正規分布は、対数が正規分布をもつ確率分布です。

対数正規逆関数は、対数正規累積分布関数に関して次のように定義されます。

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

ここで、

p=F(x|μ,σ)=1σ2π0x1texp{(logtμ)22σ2}dt,forx>0.

アルゴリズム

  • 関数 logninv は逆相補誤差関数 erfcinv を使用します。logninverfcinv の関係は次のようになります。

    logninv(p,0,1)=exp(2erfcinv(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 はデルタ法により musigma の共分散行列を使用して mu + sigma*log(logninv(p,0,1)) の分散を推定し、この分散の推定値を使用して信頼限界を求めます。大規模な標本から musigma および pCov を推定する場合、計算された信頼限界は必要な信頼水準を近似的に提供します。

代替機能

  • logninv は対数正規分布専用の関数です。Statistics and Machine Learning Toolbox™ には、さまざまな確率分布をサポートする汎用関数 icdf もあります。icdf を使用するには、LognormalDistribution 確率分布オブジェクトを作成し入力引数として渡すか、確率分布名とそのパラメーターを指定します。分布専用の関数 logninv は汎用関数 icdf より高速です。

参照

[1] Abramowitz, M., and I. A. Stegun. Handbook of Mathematical Functions. New York: Dover, 1964.

[2] Evans, M., N. Hastings, and B. Peacock. Statistical Distributions. Hoboken, NJ: Wiley-Interscience, 2000. pp. 102–105.

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入