如何在C++中随机采样具有给定平均值和标准误差的正态分布



如何在C++中获得给定均值和标准误差的随机数?有没有可以直接使用的内置功能?

我知道一些例子,使用均值和标准差来得到一个随机数。然而,我不知道重复次数,只有平均值和标准误差,所以我无法计算标准差。有什么想法吗?

我感谢你的时间和帮助。谢谢。:-)

C++11中的<random>中有std::normal_distribution,还有其他发行版。您需要分别创建一个生成器对象和一个分布对象;我链接的cppreference.com页面有一个很好的用法示例。

在C++11之前,标准库中不存在类似的东西,尽管您可能想要使用Boost。

一般的答案是在单位[0,1]上获得一个均匀随机数,然后应用变换将该值映射到所需的分布。对于正态分布,请查看这篇文章。将均匀分布转换为正态分布

最新更新