Syntax error to generate Log Normal Variables

I would like to generate 2x4 matrix of values which are log normally distributed
with mu= 1.175 and sigma = 0.0768 .. However when I write the following command
A= lognrnd(1.175,0.0768,2,4);
It appears the ouput error as follows:
??? Undefined function or method 'lognrnd' for input arguments of type 'double'.
Can any person please help me to resolve the issue ?

2 件のコメント

Star Strider
Star Strider 2012 年 9 月 12 日
It is a Statistics Toolbox function.
Type:
which lognrnd -all
on the Command Line to see if it exists on your system, and to be sure there is only one function with that name.
Jav Neo
Jav Neo 2012 年 9 月 13 日
Thanks Star ... I have checked and it says that I dont have licence avaliable ...
Is there Any alternate way to generate log normal random values???

サインインしてコメントする。

 採用された回答

Matt Fig
Matt Fig 2012 年 9 月 13 日
編集済み: Matt Fig 2012 年 9 月 13 日

0 投票

Use this instead:
A = exp(randn(2,4).*0.0768+1.175)
Or make a little function:
Lognrand = @(S,mu,sig) exp(randn(S).*sig+mu);
A = Lognrand([2,4],1.175,0.0768);
To check:
m = 5/3;
v = 7/5;
mu = log((m^2)/sqrt(v+m^2));
sigma = sqrt(log(v/(m^2)+1));
A = Lognrand([1,1e7],mu,sigma);
abs(mean(A)-m)/m % Should be pretty small
abs(var(A)-v)/v

2 件のコメント

Jav Neo
Jav Neo 2012 年 9 月 13 日
What S stand here ??
Matt Fig
Matt Fig 2012 年 9 月 13 日
Like I show, S is the size. So S=[2,4] means you will get a 2-by-4 array.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeExponents and Logarithms についてさらに検索

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by