【问题标题】:Can Random.nextgaussian() sample values from a distribution with different mean and standard deviation?Random.nextgaussian() 可以从具有不同均值和标准差的分布中采样值吗?
【发布时间】:2015-10-23 14:34:34
【问题描述】:

这是一道结合了 Java 和基础数学的问题。 Random.nextGaussian() 的文档指出它从均值 0 和标准差 1 的正态分布中采样。如果我想从均值和方差不同的正态分布中采样怎么办?

【问题讨论】:

    标签: java statistics gaussian random-sample


    【解决方案1】:

    简短的回答是

    Random r = new Random();
    double mySample = r.nextGaussian()*desiredStandardDeviation+desiredMean;
    

    例如,这里给出了这个答案:http://www.javamex.com/tutorials/random_numbers/gaussian_distribution_2.shtml

    我真的不明白为什么会这样,但经过一番研究后,我想我明白了。样本点均值为0,标准差为1;这意味着原始样本也是它自己的 z 分数(https://en.wikipedia.org/wiki/Standard_score)。引用维基百科“z 的绝对值表示原始分数与总体平均值之间的距离,以标准差为单位”。公式为 z=(x-mean)/stdev,因此默认值 z=x。如果我们想保留样本的 z 分数但改变均值和标准差,我们会怎么做?

    z*stdev + mean = x' 其中 z=x,x' 表示具有所需均值和标准差的分布中的样本。

    【讨论】:

    • 您是否希望有人确认这是正确的?如果是这样,我可以确认它是。
    • 感谢 pbabcdef!我将它作为一般答案发布,以防有​​人谷歌搜索这个问题。
    猜你喜欢
    • 2013-12-20
    • 1970-01-01
    • 2019-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-04
    相关资源
    最近更新 更多