附录:@Brent Worden的answer中提出的方法大大简化了这些问题的解决方案 . 作为一个具体示例,下面的代码显示了如何解决您引用的examples . 另外,我发现使用Erf.erf将定义here与cumulativeProbability()的实现进行比较是有帮助的 . 还要注意inverseCumulativeProbability()的实现如何概括所需的迭代方法 .
import org.apache.commons.math.MathException;
import org.apache.commons.math.distribution.NormalDistribution;
import org.apache.commons.math.distribution.NormalDistributionImpl;
/**
* @see http://stattrek.com/Tables/Normal.aspx#examples
* @see https://stackoverflow.com/questions/6353678
*/
public class CumulativeProbability {
private static NormalDistribution d;
public static void main(String[] args) throws MathException {
// Problem 1; µ = 1000; σ = 100
d = new NormalDistributionImpl(1000, 100);
System.out.println(d.cumulativeProbability(1200));
// Problem 2; µ = 50; σ