小编典典

RuntimeWarning:除以日志中遇到的零

python

我正在使用numpy.log10来计算概率值数组的对数。数组中有一些零,我正在尝试使用

result = numpy.where(prob > 0.0000000001, numpy.log10(prob), -10)

但是,RuntimeWarning: divide by zero encountered in log10仍然出现,并且我确定这是引起警告的行。

尽管我的问题已解决,但我还是困惑为什么此警告一次又一次出现?


阅读 208

收藏
2020-12-20

共1个答案

小编典典

numpy.log10(prob)计算所有元素的以10为底的对数prob,甚至是元素未选择的对数where。如果需要,可以在取对数以消除问题之前prob10**-10或零填充一些零值。(不过,请确保您不`prob

0.0000000001`使用虚拟值进行计算。)

2020-12-20