0

具体来说,当将大量小数相乘时,这些累积乘积函数是否以稳健的方式实现pandas并处理下溢?numpy例如,他们是否使用 log-sum-exp 技巧?

谢谢。

4

1 回答 1

1

抱歉不行。@warren-weckesser 的评论表明这不起作用。

np.array([1e-5, 1e-30, 1e-100, 1e-200, 1e50, 1e150]).cumprod()

# returns
array([1.0e-005, 1.0e-035, 1.0e-135, 0.0e+000, 0.0e+000, 0.0e+000])

原因是 numpy 浮点数支持最小的正值 2**-1022,或大约 2.225e-308。一旦你的计算变得小于这个值,它就会下降到零,这就是我们在上面的输出中看到的。熊猫也是如此。

于 2017-04-20T03:10:33.653 回答