c - 高斯分布在 C 中帮助不大

标签 c math gaussian

我正在尝试使用此处描述的方法 2 和方法 3 生成高斯分布: http://c-faq.com/lib/gaussian.html

问题是我有点困惑,因为我有 sigma 和 Mean 以及 0 到 1 范围内的 100 个数字,但在这些方法中它只返回 0 到 1 区间的值,在这些方法中 sigma 和尚未使用平均值。

谁能帮我如何使用这些方法生成高斯分布?

最佳答案

您链接的例程给出随机数(从高斯(正态)分布中选择),平均值为 0,标准差为 1。这是此类例程的通常工作方式。

将其更改为任何其他平均值和标准差非常容易 - 您只需乘以标准差,然后然后添加平均值。

例如,如果 x 是由上述例程之一生成的,则

y = 0.5 * x + 0.1

标准差为 0.5,平均值为 0.1。

因此您不需要为平均值和标准差的每个组合单独的例程。您只需使用给定的例程,然后进行额外的转换。

关于c - 高斯分布在 C 中帮助不大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20274794/

相关文章:

c++ - 以编程方式求解方程组?

c++ - 具有某些特征的伪随机函数算法

algorithm - nᵗʰ丑数字

python - GaussianMixture sklearn 开始先验

matlab - 向量化Matlab - 如何在没有循环的情况下向量化高斯函数(代码)

python - 在具有共享 x 轴的子图中拟合对数正态分布的直方图

c - C 预处理器中的舍入

c - 在函数中使用指针访问二维数组

c++访问双数组错误在c中工作

r - 如何在 R Studio 中将 wav 文件转换为数字