无法弄清楚为什么numpy.log10输出nan?

YKY*_*YKY 2 python numpy

所以我有一个500k的浮点值数组.当我想:

np.log10(my_long_array)
Run Code Online (Sandbox Code Playgroud)

270k的数​​字被替换为nan,而且它们并不小.例如:

In [1]: import numpy as np

In [2]: t = -0.055488893531690543

In [3]: np.log10(t)
/home/aydar/anaconda3/bin/ipython:1: RuntimeWarning: invalid value encountered in log10
  #!/home/aydar/anaconda3/bin/python3
Out[3]: nan

In [4]: type(t)
Out[4]: float
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

tmd*_*son 6

负数的对数是未定义的,因此 nan

文档到numpy.log10:

返回:y:ndarray

x的基数10的对数,以元素为单位.返回NaNs,其中x为负数.

  • 啊,好明显。我现在感到很尴尬。=))谢谢。 (2认同)