Matlab 用 exprnd 函数生成符合指数分布的随机数


实验中需要用 exprnd 函数生成大量符合指数分布的随机数样本。于是 help exprnd 

exprnd Random arrays from exponential distribution.
    R = exprnd(MU) returns an array of random numbers chosen from the
    exponential distribution with mean parameter MU.  The size of R is
    the size of MU.
 
    R = exprnd(MU,M,N,...) or R = exprnd(MU,[M,N,...]) returns an
    M-by-N-by-... array.


里边有个参数 Mu,虽然可以看到 MU 是 mean parameter,平均值。或者大约等于期望值,即 下列常见的指数分布概率密度函数中的 lambda 的倒数。

  f(x;\lambda) = \left\{\begin{matrix}\lambda e^{-\lambda x}, &\; x \ge 0, \\0, &\; x < 0.\end{matrix}\right.  

搜了一下网上有人讲,但是,最后的结论不是很清晰,残念ね。

为了谨慎,我自己来做实验验证一下吧:

1)代码;2)效果;3)结论。


1)  将 Mu 设置为5,然后生成1e4个符合指数分布的数,统计平均值。

CNT_number = 10000;  
Mu = 5;
a=exprnd(Mu, 1, CNT_number);  
plot(a);  
mean = sum(a) /CNT_number 


2) 输出为:

 mean =

   5.0090


3) 
     exprnd 函数中参数 MU 指的是确实是均值, 或者也可以理解为指数分布的期望值。


Davy_H

2014-7-14



  • 9
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值