c语言产生gamma 分布的随机数,笔记:Gamma 分布的转化

ce54597659e079b87d64f02a54f52341.pngGamma 分布

α 和β 均大于零,且令λ=1/β,假设 X 的密度满足:

230e436671671678c7e778e0feeaabcb.png

就说 X 是服从参数为 (β,α) 的 Gamma 分布,记为Γ(β,α)。Gamma 分布的两个参数中,第一个β 决定了形状 (shape),第二个参数α 决定了尺度 (scale)。

右上图中的 k 即是α,θ 即是β;期望 E=β/α,方差 D=β/(α*α)。曲线有一个峰,左右不对称。在α 比较大时,曲线接近于正态分布。

Erlang 分布

当β 为正整数 n 的时候,那么λ=1/n,Γ(n,α) 满足 Erlang 分布。Erlang 分布经常用来表示独立随机事件发生的时间间隔。比如一个车站从第一辆车到达,直到恰好有 n 辆车到达所需要的时间分布。

Erlang 分布有两个参数:k 表示阶数 (stage),μ 表示均值。概率密度符合:

3452e40254a942c6358db5423912b57d.png

概率密度符合 k 阶 Erlang 分布。

指数分布

当β=1 时,Γ(1,α) 表示参数为α 的指数分布 exp(α)。指数分布也经常用来表示独立随机事件发生的间隔,电子产品的寿命分布一般服从指数分布。指数分布不具备记忆性,如果一个人活了六十年,他再活十年的概率和一个十岁的孩子再活十年的概率,通常来说后者要高得多,这种情况就是记忆性的体现,不可能服从指数分布。

它的概率密度函数:

73a48acc59595aa73cf3860ca05b3b36.png

卡方分布

当α =n/2 ,β=1/2 时,Γ(n/2,1/2) 即是χ2 分布(卡方分布)。n 个相互独立的随机变量,均服从正态分布,那么这 n 个随机变量的平方和构成的新随机变量,分布规律符合χ2(n) 分布。所以卡方分布曲线下总面积为 1,x 取负值没有意义。

它的概率密度函数:

cfc1002205a147e109048da6bcdba3f2.png

文章未经特殊标明皆为本人原创,未经许可不得用于任何商业用途,转载请保持完整性并注明来源链接 《四火的唠叨》

×Scan to share with WeChat

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
R语言是一种常见的统计软件,可以用来进行各种统计分析及生成随机数。其中,生成gamma分布随机数可以通过以下步骤实现: 1. 选择gamma分布的参数值:gamma分布具有两个参数,分别是形状参数(shape parameter)和尺度参数(scale parameter),其中形状参数α>0,尺度参数β>0。根据具体需求,我们可以设定不同的参数值来生成不同的gamma分布随机数。 2. 使用rgamma函数生成随机数:在R语言中,可以使用rgamma函数来生成gamma分布随机数,其语法为rgamma(n,shape,scale),其中n为生成随机数个数,shape为形状参数的值,scale为尺度参数的值。例如,若要生成100个形状参数为2、尺度参数为3的gamma分布随机数,可以使用以下代码: ```r set.seed(123) # 设置随机数种子,保证结果可重复 x <- rgamma(100, shape = 2, scale = 3) ``` 以上代码中,我们使用了set.seed函数来设置随机数种子,这样生成随机数结果将是可重复的。然后,我们使用rgamma函数生成了100个形状参数为2、尺度参数为3的gamma分布随机数,并将结果保存在变量x中。 3. 可视化生成随机数:为了更直观地了解生成gamma分布随机数,我们可以使用hist函数将其进行可视化。例如,我们可以使用以下代码将生成随机数x进行直方图可视化: ```r hist(x, breaks = 20, freq = FALSE, col = "yellow", xlab = "x", ylab = "Density", main = "Gamma Distribution") curve(dgamma(x, shape = 2, scale = 3), add = TRUE, col = "blue") ``` 以上代码中,我们使用了hist函数对随机数x进行直方图可视化,并将其分成20个区间,同时将频数设置为FALSE,保证y轴显示的是概率密度。我们还通过curve函数画出了形状参数为2、尺度参数为3时的真实概率密度函数,以便比较生成随机数与真实概率密度的相似程度。 通过以上步骤,我们就可以在R语言中生成gamma分布随机数,并对生成随机数进行可视化分析,以便进一步探索数据的分布规律。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值