>> r=9;
>> lamda=3;
>> sum(log(rand(1,r)))/lamda
上面就可以产生一个随机数
说明
rand(1,r)产生一行r列的[0,1)的均匀随机数
log(rand(1,r))就是将这些随机数取自然对数(以e为底)
sum(log(rand(1,r)))就是将上述结果求和
sum(log(rand(1,r)))/lumda就不用说了吧
你如果想要k个这样的随机数,并赋给A
你可以这样:
A=[];
for i=1:k
A=[A,sum(log(rand(1,r)))/lumda];
end
A
就可以得到k个该分布的随机数.