主要内容

使用均匀分布反转生成随机数

此示例显示了如何使用统一分发反转方法生成随机数。当可以计算逆累积分布函数时,这对分布非常有用,但没有支持直接从分布中采样。金宝app

步骤1.从标准均匀分布生成随机数。

采用兰特从间隔(0,1)上的均匀分布生成1000个随机数。

RNG('默认'重复性的%u =兰特(1000,1);

反演方法依赖于连续累积分布函数(CDF)在开放间隔(0,1)上均匀的原理。如果 是(0,1)的均匀随机数,然后 X = F - 1 生成随机数 X 从任何连续分布与指定的CDFF

步骤2.从威布尔分布生成随机数。

使用逆累积分布函数从带有参数的Weibull分布生成随机数a = 1B = 1这对应于概率。绘制结果。

X = WBLINV(U,1,1);直方图(x,20);

直方图显示使用Weibull反常CDF功能生成的随机数Wlininv.有一个weibull分布。

步骤3.从标准正态分布生成随机数。

相同的价值通过使用所需分布的逆CDF的相同过程,可以从任何分布,例如标准正常生成随机数。

图x_norm = norminv(u,1,1);直方图(X_NORM,20)

直方图显示,通过使用标准正常逆CDF诺考,从中生成的随机数现在有标准的正态分布。

也可以看看

|||

相关话题