我想在PLSQL - Oracle中生成一个正态分布。我知道我们可以通过dbms_random生成这种分布,但我想指定正态函数的参数(区间,平均值,标准差)。
有没有一种简单的方法来生成这种分布,或者我应该编写我自己的函数?
谢谢你
如果你想从一个任意的正态分布中生成数字,只有两个参数是有意义的,平均值和标准差。 我不确定你想指定什么 "区间",除非你想生成一个截断的分布。
给定一个来自标准正态分布的数字(平均数0,标准差1,这就是 dbms_random.normal
返回),将其转换为一个任意的正态分布是非常简单的。 只要乘以你想要的标准差,再加上你想要的平均值。 如果你想通过截断特别高或特别低的值来使分布成为非正态分布,你也可以这样做。