2016-07-25 60 views
2

如此看來相當直截了當,我們給出Matlab的logncdf功能不產生在這個問題上預期的結果

的X = 10,281

均值和X = 4112.4

我們被要求來確定P(X的西格瑪< 15000)

現在我想的代碼爲這個在MATLAB應該是超級簡單

mu = 10281 
sigma = 4112.4 
p = logncdf(15000,10281,4112.4) 

但是這給

P = 0.0063

給出的答案是0.8790,只是看在P你可以告訴它是錯誤的,因爲我們是在15000這是超過這意味着它應該高於.5平均值。這個功能的處理是什麼?

我看到了某處你可能需要在函數中使用exp(15000)來得到1的概率爲1的太高的函數。

任何指針將不勝感激

+2

你確定你正在處理的分佈'Lognormal'? –

+0

同意@Sardar_Usama。 normcdf(15000,10281,4112.4)給出了0.8744,所以你認爲給定的答案是錯誤的。 –

回答

2
%If X is lognormally distributed with parameters:- 
mu = 10281; 
sigma = 4112.4; 

%then log(X) is normally distributed with following parameters: 
mew_actual = log((mu^2)/sqrt(sigma^2+mu^2)); 
sigma_actual = sqrt(log((sigma^2)/(mu^2) +1)); 

現在你可以使用下列任一計算CDF: -

p = cdf('Normal',log(15000),mew_actual,sigma_actual) 

p=logncdf(15000,mew_actual,sigma_actual) 

這給0.8796 (我相信這是正確的答案)

給你答案是0.8790,因爲如果你解決了手頭上的問題,你會得到這樣的:z = 1.172759,當你在表中查找此值,你只能找到z = 1.17(不含小數位的其餘部分)和爲此φ(z)=0.8790

您可以使用this calculator來驗證確切答案。相關截圖如下附:

exactvalue

+0

你的答案在數值上是正確的;然而,解釋是錯誤的(或者至少很少)。在原始問題中,'mu'和'sigma'(@AKNorth)是所討論的隨機變量('X')的平均值和標準偏差。然而,在Matlab的'logncdf'函數中,mu和sigma是相關的正態分佈隨機變量('Y = log(X)')的平均值和標準偏差。所有你需要的是這些參數之間的連接,這是你正確給出的。 – Arpi