1

我将 apache-commons-math 用于逆累积 beta 分布函数,但它对小于 2E-15 的值给出了不正确的结果。在值 2E-15 之前,结果是正确的,并且还通过 R 进行了验证。

Value 2E-15
Result in R = -7.854929
Result in Java  = -7.8529

Value 2E-16
Result in R = -8.1385
Result in Java  = -35355339.059

谁能给我建议任何解决方案

4

1 回答 1

0

Beta 分布的逆 CDF 范围为 [0, 1]。由于 R 和 Apache Commons Math 都返回负值,因此在计算如此小的概率的逆 CDF 时显然存在一些数值错误。

您的问题可能没有数值解决方案。相反,将逆 CDF 的所有负输出视为零就足够了。

于 2017-08-01T13:23:20.407 回答