Apache Commons 数学正态累积概率

Pro*_*sam 3 java normal-distribution apache-commons apache-commons-math

维基百科列出了计算正态分布累积概率的多种数值方法。然而,使用 Apache Commons Math,您不需要了解其中任何一个,因为该库只是为您完成工作:

NormalDistribution normal = new NormalDistribution(mu, sigma);
normal.cumulativeProbability(x);
Run Code Online (Sandbox Code Playgroud)

对于一些研究项目,我很想知道他们使用什么方法。有谁知道 Apache Commons Math 使用什么方法来近似正常累积值?是来自维基百科中列出的方法还是他们实现了不同的方法?

Car*_*ten 5

开源软件的美妙之处在于您可以随时检查源代码。的实现cumulativeProbability相当简单,只是返回

0.5 * (1 + Erf.erf(dev / (standardDeviation * SQRT2)));
Run Code Online (Sandbox Code Playgroud)

其中Erf.erf计算误差函数。它在这里定义。

不,它不使用上述维基百科文章中的任何特殊方法。这只是公式的直接实现

在此输入图像描述